public class BasicBrooklynTypeRegistry extends java.lang.Object implements BrooklynTypeRegistry
BrooklynTypeRegistry.RegisteredTypeKind
Constructor and Description |
---|
BasicBrooklynTypeRegistry(ManagementContext mgmt) |
Modifier and Type | Method and Description |
---|---|
void |
addToLocalUnpersistedTypeRegistry(RegisteredType type,
boolean canForce) |
void |
clear()
Deletes all items, for use when resetting management context
|
<T> T |
create(RegisteredType type,
RegisteredTypeLoadingContext constraint,
java.lang.Class<T> optionalResultSuperType)
Creates an instance of the given type, either a bean or spec as appropriate.
|
<T> T |
createBean(RegisteredType type,
RegisteredTypeLoadingContext constraint,
java.lang.Class<T> optionalResultSuperType)
Typesafe non-spec variant of
BrooklynTypeRegistry.create(RegisteredType, RegisteredTypeLoadingContext, Class) |
<T> T |
createBeanFromPlan(java.lang.String planFormat,
java.lang.Object planData,
RegisteredTypeLoadingContext optionalConstraint,
java.lang.Class<T> optionalSuperType) |
<T> T |
createFromPlan(java.lang.Class<T> requiredSuperTypeHint,
java.lang.String planFormat,
java.lang.Object planData,
RegisteredTypeLoadingContext optionalConstraint)
Creates a bean or spec (depending on the super-type hint) for the given plan data (e.g.
|
<SpecT extends AbstractBrooklynObjectSpec<?,?>> |
createSpec(RegisteredType type,
RegisteredTypeLoadingContext constraint,
java.lang.Class<SpecT> specSuperType)
|
<SpecT extends AbstractBrooklynObjectSpec<?,?>> |
createSpecFromPlan(java.lang.String planFormat,
java.lang.Object planData,
RegisteredTypeLoadingContext optionalConstraint,
java.lang.Class<SpecT> optionalSpecSuperType)
|
void |
delete(RegisteredType type)
removes the given registered type in the noted bundle;
if not known in that bundle tries deleting from legacy catalog.
|
void |
delete(java.lang.String id)
|
void |
delete(VersionedName type)
removes registered type with the given ID from the local in-memory catalog
(ignores bundle, deletes from all bundles if present in multiple;
falls back to removing from legacy catalog if not known here in any bundles)
|
RegisteredType |
get(java.lang.String symbolicNameWithOptionalVersion)
as
BrooklynTypeRegistry.get(String, String) but the given string here
is allowed to match any of:
the given string as an ID including version ("name:version" )
the symbolic name unversioned, or
an alias |
RegisteredType |
get(java.lang.String symbolicNameWithOptionalVersion,
RegisteredTypeLoadingContext context)
as
BrooklynTypeRegistry.get(String) but further filtering for the additional context |
RegisteredType |
get(java.lang.String symbolicName,
java.lang.String version) |
java.lang.Iterable<RegisteredType> |
getAll() |
BundleUpgradeParser.CatalogUpgrades |
getCatalogUpgradesInstructions() |
java.lang.Iterable<RegisteredType> |
getMatching(<any> filter) |
Maybe<RegisteredType> |
getMaybe(java.lang.String symbolicNameWithOptionalVersion,
RegisteredTypeLoadingContext context)
returns a wrapper of the result of
BrooklynTypeRegistry.get(String, RegisteredTypeLoadingContext)
including a detailed message if absent |
void |
storeCatalogUpgradesInstructions(BundleUpgradeParser.CatalogUpgrades catalogUpgrades) |
public BasicBrooklynTypeRegistry(ManagementContext mgmt)
public java.lang.Iterable<RegisteredType> getAll()
getAll
in interface BrooklynTypeRegistry
public java.lang.Iterable<RegisteredType> getMatching(<any> filter)
getMatching
in interface BrooklynTypeRegistry
public RegisteredType get(java.lang.String symbolicName, java.lang.String version)
get
in interface BrooklynTypeRegistry
symbolicName
and optionally RegisteredType.getVersion()
,
taking the best version if the version is null, blank, or a default marker,
returning null if no matches are found.public RegisteredType get(java.lang.String symbolicNameWithOptionalVersion, RegisteredTypeLoadingContext context)
BrooklynTypeRegistry
BrooklynTypeRegistry.get(String)
but further filtering for the additional contextget
in interface BrooklynTypeRegistry
public Maybe<RegisteredType> getMaybe(java.lang.String symbolicNameWithOptionalVersion, RegisteredTypeLoadingContext context)
BrooklynTypeRegistry
BrooklynTypeRegistry.get(String, RegisteredTypeLoadingContext)
including a detailed message if absentgetMaybe
in interface BrooklynTypeRegistry
public RegisteredType get(java.lang.String symbolicNameWithOptionalVersion)
BrooklynTypeRegistry
BrooklynTypeRegistry.get(String, String)
but the given string here
is allowed to match any of:
"name:version"
)
get
in interface BrooklynTypeRegistry
public <SpecT extends AbstractBrooklynObjectSpec<?,?>> SpecT createSpec(RegisteredType type, @Nullable RegisteredTypeLoadingContext constraint, @Nullable java.lang.Class<SpecT> specSuperType)
BrooklynTypeRegistry
AbstractBrooklynObjectSpec
variant of BrooklynTypeRegistry.create(RegisteredType, RegisteredTypeLoadingContext, Class)
createSpec
in interface BrooklynTypeRegistry
public <SpecT extends AbstractBrooklynObjectSpec<?,?>> SpecT createSpecFromPlan(@Nullable java.lang.String planFormat, java.lang.Object planData, @Nullable RegisteredTypeLoadingContext optionalConstraint, @Nullable java.lang.Class<SpecT> optionalSpecSuperType)
BrooklynTypeRegistry
AbstractBrooklynObjectSpec
variant of BrooklynTypeRegistry.createFromPlan(Class, String, Object, RegisteredTypeLoadingContext)
createSpecFromPlan
in interface BrooklynTypeRegistry
public <T> T createBean(RegisteredType type, @Nullable RegisteredTypeLoadingContext constraint, @Nullable java.lang.Class<T> optionalResultSuperType)
BrooklynTypeRegistry
BrooklynTypeRegistry.create(RegisteredType, RegisteredTypeLoadingContext, Class)
createBean
in interface BrooklynTypeRegistry
public <T> T createBeanFromPlan(java.lang.String planFormat, java.lang.Object planData, @Nullable RegisteredTypeLoadingContext optionalConstraint, @Nullable java.lang.Class<T> optionalSuperType)
createBeanFromPlan
in interface BrooklynTypeRegistry
public <T> T create(RegisteredType type, @Nullable RegisteredTypeLoadingContext constraint, @Nullable java.lang.Class<T> optionalResultSuperType)
BrooklynTypeRegistry
create
in interface BrooklynTypeRegistry
public <T> T createFromPlan(java.lang.Class<T> requiredSuperTypeHint, @Nullable java.lang.String planFormat, java.lang.Object planData, @Nullable RegisteredTypeLoadingContext optionalConstraint)
BrooklynTypeRegistry
createFromPlan
in interface BrooklynTypeRegistry
public void addToLocalUnpersistedTypeRegistry(RegisteredType type, boolean canForce)
public void delete(VersionedName type)
java.util.NoSuchElementException
- if not foundpublic void delete(RegisteredType type)
java.util.NoSuchElementException
- if not foundpublic void delete(java.lang.String id)
public void clear()
public void storeCatalogUpgradesInstructions(BundleUpgradeParser.CatalogUpgrades catalogUpgrades)
public BundleUpgradeParser.CatalogUpgrades getCatalogUpgradesInstructions()