@Beta public Iterable<RegisteredType> uninstallCatalogItemsFromBundle(VersionedName bundle) { List<RegisteredType> thingsFromHere = ImmutableList.copyOf(getTypesFromBundle( bundle )); log.debug("Uninstalling items from bundle "+bundle+": "+thingsFromHere); for (RegisteredType t: thingsFromHere) { mgmt.getCatalog().deleteCatalogItem(t.getSymbolicName(), t.getVersion()); } return thingsFromHere; }
/** @deprecated since 0.9.0 use {@link BrooklynTypeRegistry#get(String, org.apache.brooklyn.api.typereg.BrooklynTypeRegistry.RegisteredTypeKind, Class)} */ // not used @Deprecated public static <T,SpecT> CatalogItem<T, SpecT> getCatalogItemOptionalVersion(ManagementContext mgmt, Class<T> type, String versionedId) { if (looksLikeVersionedId(versionedId)) { String id = getSymbolicNameFromVersionedId(versionedId); String version = getVersionFromVersionedId(versionedId); return mgmt.getCatalog().getCatalogItem(type, id, version); } else { return mgmt.getCatalog().getCatalogItem(type, versionedId, BrooklynCatalog.DEFAULT_VERSION); } }
/** @deprecated since 0.9.0 use {@link BrooklynTypeRegistry#get(String, org.apache.brooklyn.api.typereg.BrooklynTypeRegistry.RegisteredTypeKind, Class)} */ // only a handful of items remaining, requiring a CatalogItem: two in REST, one in rebind, and one in ClassLoaderUtils @Deprecated public static CatalogItem<?, ?> getCatalogItemOptionalVersion(ManagementContext mgmt, String versionedId) { if (versionedId == null) return null; if (looksLikeVersionedId(versionedId)) { String id = getSymbolicNameFromVersionedId(versionedId); String version = getVersionFromVersionedId(versionedId); return mgmt.getCatalog().getCatalogItem(id, version); } else { return mgmt.getCatalog().getCatalogItem(versionedId, BrooklynCatalog.DEFAULT_VERSION); } }
@BeforeMethod(alwaysRun = true) public void setUp() throws Exception { forceUpdate = false; brooklynMgmt = setUpPlatform(); catalog = brooklynMgmt.getCatalog(); }
@Override public void run() { for (CatalogItem<?, ?> item : items.get()) { mgmt().getCatalog().peekSpec(item); } } };
@Override public void run() { for (CatalogItem<?, ?> item : items) { mgmt().getCatalog().peekSpec(item); } } };
@Override public Void apply(CatalogInitialization catInit) { try { populateCatalog(catInit.getManagementContext().getCatalog()); } catch (Throwable e) { catInit.handleException(e, "in main class populate catalog override"); } // Force load of catalog (so web console is up to date) confirmCatalog(catInit); return null; } });
@Override public void run() { if (items.get() != null) { for (CatalogItem<?, ?> item : items.get()) { mgmt().getCatalog().deleteCatalogItem(item.getSymbolicName(), item.getVersion()); } } } };
@Test public void testDeleteDefault() { String symbolicName = "sampleId"; addCatalogEntity(symbolicName, null); Iterable<RegisteredType> matches; matches = types.getMatching(RegisteredTypePredicates.symbolicName(Predicates.equalTo(symbolicName))); assertTrue(matches.iterator().hasNext()); mgmt().getCatalog().deleteCatalogItem(symbolicName, BasicBrooklynCatalog.NO_VERSION); matches = types.getMatching(RegisteredTypePredicates.symbolicName(Predicates.equalTo(symbolicName))); assertFalse(matches.iterator().hasNext()); }
protected void deleteItem(ManagementContext mgmt, String symbolicName, String version) { mgmt.getCatalog().deleteCatalogItem(symbolicName, version); LOG.info("Deleted item from catalog: {}:{}", symbolicName, version); Assert.assertNull( mgmt.getTypeRegistry().get(symbolicName, version) ); }
@Override public Void apply(CatalogInitialization input) { input.getManagementContext().getCatalog().addItem(appClazz); return null; } });
@Override public void run() { if (items.get() != null) { for (CatalogItem<?, ?> item : items.get()) { mgmt().getCatalog().deleteCatalogItem(item.getSymbolicName(), item.getVersion()); } } } };
protected Iterable<? extends CatalogItem<?,?>> addCatalogItems(String catalogYaml) { return mgmt().getCatalog().addItems(catalogYaml, forceUpdate); }
@Test public void testDelete() { String symbolicName = "sampleId"; String version = "0.1.0"; addCatalogEntity(symbolicName, version); Iterable<RegisteredType> matches; matches = types.getMatching(RegisteredTypePredicates.symbolicName(Predicates.equalTo(symbolicName))); assertTrue(matches.iterator().hasNext()); mgmt().getCatalog().deleteCatalogItem(symbolicName, version); matches = types.getMatching(RegisteredTypePredicates.symbolicName(Predicates.equalTo(symbolicName))); assertFalse(matches.iterator().hasNext()); }
private void rebindAndAssertCatalogsAreEqual() { try { rebind(); } catch (Exception e) { throw Throwables.propagate(e); } assertCatalogsEqual(newManagementContext.getCatalog(), origManagementContext.getCatalog()); }
@Override public Void apply(ManagementContext mgmt) { assertMgmtStartedEventually(mgmt); for (String itemName : itemSymbolicNames) { CatalogItem<?, ?> item = mgmt.getCatalog().getCatalogItem(CatalogUtils.getSymbolicNameFromVersionedId(itemName), CatalogUtils.getVersionFromVersionedId(itemName)); assertNotNull(item); } return null; } private void assertMgmtStartedEventually(final ManagementContext mgmt) {
@SuppressWarnings("deprecation") static RegisteredType addCatalogItemWithNameAndType(ManagementContext mgmt, String symName, String version, String type, String ...libraries) { OsgiTestBase.preinstallLibrariesLowLevelToPreventCatalogBomParsing(mgmt, libraries); CatalogEntityItemDto c1 = newCatalogItemWithNameAndType(symName, version, type, libraries); mgmt.getCatalog().addItem(c1); RegisteredType c2 = mgmt.getTypeRegistry().get(symName, version); Preconditions.checkNotNull(c2, "Item "+type+":"+version+" was not found after adding it"); return c2; }
@Test public void testAddCatalogItemUsingNameInsteadOfIdWithoutVersion() throws Exception { String id = "unversioned.app"; addCatalogItems( "brooklyn.catalog:", " name: " + id, " itemType: entity", " item:", " type: "+ BasicEntity.class.getName()); RegisteredType catalogItem = mgmt().getTypeRegistry().get(id, BrooklynCatalog.DEFAULT_VERSION); assertEquals(catalogItem.getVersion(), BasicBrooklynCatalog.NO_VERSION); mgmt().getCatalog().deleteCatalogItem(id, BasicBrooklynCatalog.NO_VERSION); Assert.assertNull(mgmt().getTypeRegistry().get(id)); }
@AfterMethod(alwaysRun=true) @Override public void tearDown() throws Exception { try { for (RegisteredType ci : mgmt().getTypeRegistry().getMatching(RegisteredTypePredicates.IS_LOCATION)) { mgmt().getCatalog().deleteCatalogItem(ci.getSymbolicName(), ci.getVersion()); } } finally { super.tearDown(); } }
@AfterMethod(alwaysRun=true) @Override public void tearDown() throws Exception { try { for (RegisteredType ci : mgmt().getTypeRegistry().getMatching(RegisteredTypePredicates.IS_LOCATION)) { mgmt().getCatalog().deleteCatalogItem(ci.getSymbolicName(), ci.getVersion()); } } finally { super.tearDown(); } }