public abstract class AbstractRuntimeRepository extends Object implements IRuntimeRepository
| Constructor and Description |
|---|
AbstractRuntimeRepository(String name) |
| Modifier and Type | Method and Description |
|---|---|
void |
addDirectlyReferencedRepository(IRuntimeRepository repository)
Adds a repository this repository depends on because the one to add contains product data
that is referenced from this repository.
|
void |
addEnumValueLookupService(IEnumValueLookupService<?> lookup)
Adds the service to lookup enumeration values for the enumeration type specified by
IEnumValueLookupService.getEnumTypeClass(). |
protected abstract List<XmlAdapter<?,?>> |
getAllInternalEnumXmlAdapters(IRuntimeRepository repository)
Returns all enumeration XmlAdapters available in this repository that generated by
Faktor-IPS.
|
List<IpsTest2> |
getAllIpsTestCases(IRuntimeRepository runtimeRepository)
Returns a list of all test cases stored in the repository and all repositories this one
references.
|
protected abstract void |
getAllIpsTestCases(List<IpsTest2> result,
IRuntimeRepository runtimeRepository)
Same as
getAllIpsTestCases(IRuntimeRepository) but searches only in this repository
and not the ones, this repository depends on. |
Set<String> |
getAllModelTypeImplementationClasses()
Returns a set containing the Java Class names of the implementation classes for all model
types available in this repository (either directly or via a referenced repository).
|
protected abstract void |
getAllModelTypeImplementationClasses(Set<String> result)
Same as getAllModelTypeImplementationClasses() but searches only in this repository and not
the ones, this repository depends on.
|
List<String> |
getAllProductComponentIds()
Returns a list of the IDs of all product components held by this repository or any dependent
repository.
|
protected abstract void |
getAllProductComponentIds(List<String> result)
Same as getAllProductComponentIds() but searches only in this repository and not the ones,
this repository depends on.
|
List<IProductComponent> |
getAllProductComponents()
Returns all product components available in this repository.
|
<T extends IProductComponent> |
getAllProductComponents(Class<T> productCmptClass)
Returns all product components that are instances of the indicated class.
|
protected abstract void |
getAllProductComponents(List<IProductComponent> result)
Same as getAllProductComponents() but searches only in this repository and not the ones, this
repository depends on.
|
List<IProductComponent> |
getAllProductComponents(String kindId)
Returns all product components that belong to the indicated product component kind.
|
protected abstract void |
getAllProductComponents(String kindId,
List<IProductComponent> result)
Same as getAllProductComponent(String kindId) but searches only in this repository and not
the ones, this repository depends on.
|
protected <T extends IProductComponent> |
getAllProductComponentsInternal(Class<T> productCmptClass,
List<T> result)
Same as
getAllProductComponents(Class) but only searches in own repository not in
referenced ones and adding result to parameter result |
List<IRuntimeRepository> |
getAllReferencedRepositories()
Returns all repositories this one depends on directly or indirectly.
|
List<ITable<?>> |
getAllTables()
Returns all tables available in this repository.
|
protected abstract void |
getAllTables(List<ITable<?>> result)
Same as
getAllTables() but searches only in this repository and not the ones,
this repository depends on. |
ClassLoader |
getClassLoader()
Returns the class loader that is used to load Java classes by this repository.
|
<T> T |
getCustomRuntimeObject(Class<T> type,
String ipsObjectQualifiedName)
Returns a object of type
T, identified by it's qualified name, or null if no
such object exists in this repository or it's referenced repositories. |
protected abstract <T> T |
getCustomRuntimeObjectInternal(Class<T> type,
String ipsObjectQualifiedName)
Same as
getCustomRuntimeObject(Class, String) but searches only in this repository
and not the ones this repository depends on. |
List<IRuntimeRepository> |
getDirectlyReferencedRepositories()
Returns the runtime repositories this one directly depends on.
|
<T> T |
getEnumValue(Class<T> clazz,
Object id)
Returns the enumeration value for the provided enumeration class with the given id.
|
Object |
getEnumValue(String uniqueId)
Deprecated.
This method does only return valid enums if the id attribute of the enum is of
type
String. You should never use this method! Use
getEnumValue(Class, Object) instead. This method may be returned in
future releases. |
<T> IEnumValueLookupService<T> |
getEnumValueLookupService(Class<T> enumClazz)
Returns the lookup service for the given enumeration type.
|
<T> List<T> |
getEnumValues(Class<T> clazz)
Returns the type safe
List of enumeration values of the provided faktor ips generated
enumeration class. |
protected <T> List<T> |
getEnumValuesDefinedInType(Class<T> enumClass)
Returns the values that are defined in the type by a constant called 'VALUES'.
|
protected abstract <T> List<T> |
getEnumValuesInternal(Class<T> clazz)
Returns the list of enumeration values of the enumeration type that is identified by its
class which is provided to it.
|
<T> T |
getExistingEnumValue(Class<T> clazz,
Object id)
Returns the enumeration value for the provided enumeration class with the given id.
|
IProductComponent |
getExistingProductComponent(String id)
Returns the product component identified by the given id.
|
IProductComponentGeneration |
getExistingProductComponentGeneration(String id,
Calendar effectiveDate)
Returns the product component generation identified by the id and the effective date.
|
IFormulaEvaluatorFactory |
getFormulaEvaluatorFactory()
For default there is no formula evaluation supported.
|
IpsTest2 |
getIpsTest(String qName)
Returns the test (either test case or suite) for the given qualified name.
|
IpsTest2 |
getIpsTest(String qName,
IRuntimeRepository runtimeRepository)
Returns the test (either test case or suite) for the given qualified name.
|
IpsTestCaseBase |
getIpsTestCase(String qName)
Returns the test case for the given qualified name.
|
IpsTestCaseBase |
getIpsTestCase(String qName,
IRuntimeRepository runtimeRepository)
Returns the test case for the given qualified name.
|
protected abstract IpsTestCaseBase |
getIpsTestCaseInternal(String qName,
IRuntimeRepository runtimeRepository)
Same as
getIpsTestCase(String, IRuntimeRepository) but searches only in this
repository and not the ones, this repository depends on. |
List<IpsTest2> |
getIpsTestCasesStartingWith(String qNamePrefix,
IRuntimeRepository runtimeRepository)
Returns a list of test cases starting with the given qualified name prefix stored in the
repository and all repositories this one references.
|
protected abstract void |
getIpsTestCasesStartingWith(String qNamePrefix,
List<IpsTest2> result,
IRuntimeRepository runtimeRepository)
Gets all ips test cases starting with the given qualified name prefix.
|
IpsTestSuite |
getIpsTestSuite(String qNamePrefix)
Returns a test suite that contains all tests that have qualified names starting with the
given prefix.
|
IpsTestSuite |
getIpsTestSuite(String qNamePrefix,
IRuntimeRepository runtimeRepository)
Returns a test suite that contains all tests that have qualified names starting with the
given prefix.
|
IProductComponentGeneration |
getLatestProductComponentGeneration(IProductComponent productCmpt)
Returns the latest product component generation of the provided product component.
|
protected abstract IProductComponentGeneration |
getLatestProductComponentGenerationInternal(IProductComponent productCmpt) |
Type |
getModelType(Class<?> modelObjectClass)
Returns the
IModelType containing the meta information for the given model
object class. |
PolicyCmptType |
getModelType(IModelObject modelObject)
Returns the
IModelType containing the meta information for the given model
object. |
ProductCmptType |
getModelType(IProductComponent productComponent)
Returns the
IModelType containing the meta information for the given product
component. |
String |
getName()
Returns the repository's name.
|
IProductComponentGeneration |
getNextProductComponentGeneration(IProductComponentGeneration generation)
Returns the product component generation that follows the provided generation with respect to
its valid from date.
|
protected abstract IProductComponentGeneration |
getNextProductComponentGenerationInternal(IProductComponentGeneration generation) |
int |
getNumberOfProductComponentGenerations(IProductComponent productCmpt)
Returns the number of product component generations of the provided product component.
|
protected abstract int |
getNumberOfProductComponentGenerationsInternal(IProductComponent productCmpt) |
IProductComponentGeneration |
getPreviousProductComponentGeneration(IProductComponentGeneration generation)
Returns the product component generation that is prior to the provided generation with
respect to its valid from date.
|
protected abstract IProductComponentGeneration |
getPreviousProductComponentGenerationInternal(IProductComponentGeneration generation) |
IProductComponent |
getProductComponent(String id)
Returns the product component identified by the given id.
|
IProductComponent |
getProductComponent(String kindId,
String versionId)
Returns the product component identified by the given KindId and versionId.
|
IProductComponentGeneration |
getProductComponentGeneration(String id,
Calendar effectiveDate)
Returns the product component generation identified by the id and the effective date.
|
protected abstract IProductComponentGeneration |
getProductComponentGenerationInternal(String id,
Calendar effectiveDate)
Same as getProductComponentGeneration(String id, Calendar effectiveDate) but searches only in
this repository and not the ones, this repository depends on.
|
List<IProductComponentGeneration> |
getProductComponentGenerations(IProductComponent productCmpt)
Returns all product component generations for the given product component.
|
abstract void |
getProductComponentGenerations(IProductComponent productCmpt,
List<IProductComponentGeneration> result)
Same as getProductComponentGenerations() but searches only in this repository and not the
ones, this repository depends on.
|
protected abstract IProductComponent |
getProductComponentInternal(String id)
Same as getProductComponent(String id) but searches only in this repository and not the ones,
this repository depends on.
|
protected abstract IProductComponent |
getProductComponentInternal(String kindId,
String versionId)
Same as getProductComponent(String kindId, String versionId) but searches only in this
repository and not the ones, this repository depends on.
|
IRuntimeRepositoryLookup |
getRuntimeRepositoryLookup()
Returns the
IRuntimeRepositoryLookup that was previously set using
IRuntimeRepository.setRuntimeRepositoryLookup(IRuntimeRepositoryLookup). |
<T extends ITable<?>> |
getTable(Class<T> tableClass)
Returns the table contents for the given table class.
|
ITable<?> |
getTable(String qualifiedTableName)
Returns the table contents for the given qualified table name.
|
protected abstract <T extends ITable<?>> |
getTableInternal(Class<T> tableClass)
Same as
getTable(Class) but searches only in this repository and not the ones, this
repository depends on. |
protected abstract ITable<?> |
getTableInternal(String qualifiedTableName)
Same as
getTable(String)) but searches only in this repository and not the ones,
this repository depends on. |
JAXBContext |
newJAXBContext()
Creates a new JAXBContext that can marshall / unmarshall all model classes defined in this
repository.
|
JAXBContext |
newJAXBContext(JAXBContext ctx)
Creates a
JAXBContext that wraps the provided context and extends the marshaling
methods to provide marshaling of Faktor-IPS enumerations and model objects configured by
product components. |
void |
removeEnumValueLookupService(IEnumValueLookupService<?> lookup)
Removes the lookup service registered for the given enumeration type.
|
void |
setFormulaEvaluatorFactory(IFormulaEvaluatorFactory formulaEvaluatorFactory)
If you want to support formula evaluation you can set a
IFormulaEvaluatorFactory. |
void |
setRuntimeRepositoryLookup(IRuntimeRepositoryLookup repositoryLookup)
Setting a
IRuntimeRepositoryLookup is needed to enable serialization of policy
components. |
String |
toString() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitisModifiablepublic AbstractRuntimeRepository(String name)
public ClassLoader getClassLoader()
This default implementation returns the class loader with which this repository class has been loaded.
getClassLoader in interface IRuntimeRepositorypublic String getName()
IRuntimeRepositorygetName in interface IRuntimeRepositorypublic final void addDirectlyReferencedRepository(IRuntimeRepository repository)
IRuntimeRepositorygetProductComponent(..) include all repositories this one depends on in their
search.addDirectlyReferencedRepository in interface IRuntimeRepositoryrepository - The repository to add.public List<IRuntimeRepository> getDirectlyReferencedRepositories()
IRuntimeRepositorygetDirectlyReferencedRepositories in interface IRuntimeRepositorypublic List<IRuntimeRepository> getAllReferencedRepositories()
IRuntimeRepositorygetAllReferencedRepositories in interface IRuntimeRepositorypublic final IProductComponent getProductComponent(String id)
IRuntimeRepositorynull if the id
is null or no component with the indicated id can be found.
Note
How the product component id is structured, is defined as part of the ips project. The definition is called a product component naming (and identification) strategy. The standard strategy is to use the id of the product component kind followed by a separator followed by component's versionId. However it is possible to use completly different strategies for example to create numeric identifiers to reduce the size of indices in a datatbase. In the latter case the product component id can't be derived from the product component kind id and it's version id.
getProductComponent in interface IRuntimeRepositoryid - The id of the product component to find.null.public final IProductComponent getExistingProductComponent(String id)
IRuntimeRepositorygetExistingProductComponent in interface IRuntimeRepositoryid - The id of the product component to find.IRuntimeRepository.getProductComponent(String)protected abstract IProductComponent getProductComponentInternal(String id)
public final IProductComponent getProductComponent(String kindId, String versionId)
IRuntimeRepositorynull the most recent version is returned. Returns null if the
kindId is null or no component with the indicated kindId and versionId can be
found.getProductComponent in interface IRuntimeRepositorykindId - The product component kind id, e.g. CollisionCoverageversionId - The versionId to find, e.g. 2005-01null.protected abstract IProductComponent getProductComponentInternal(String kindId, String versionId)
public final List<IProductComponent> getAllProductComponents(String kindId)
IRuntimeRepositorynull or no component with the indicated kind
is found.getAllProductComponents in interface IRuntimeRepositorykindId - The product component kind id, e.g. CollisionCoverageprotected abstract void getAllProductComponents(String kindId, List<IProductComponent> result)
public IProductComponentGeneration getExistingProductComponentGeneration(String id, Calendar effectiveDate)
IRuntimeRepositorygetExistingProductComponentGeneration in interface IRuntimeRepositoryid - The product component's id.effectiveDate - The process' effective dateIRuntimeRepository.getProductComponentGeneration(String, Calendar)public final IProductComponentGeneration getProductComponentGeneration(String id, Calendar effectiveDate)
IRuntimeRepositorynull if either the id is null, the effectiveDate is
nullor no generation with the indicated id can be found or the product component
hasn't got a generation that is effective on the given date.getProductComponentGeneration in interface IRuntimeRepositoryid - The product component's id.effectiveDate - The process' effective datenull.protected abstract IProductComponentGeneration getProductComponentGenerationInternal(String id, Calendar effectiveDate)
public final <T extends IProductComponent> List<T> getAllProductComponents(Class<T> productCmptClass)
IRuntimeRepositorygetAllProductComponents in interface IRuntimeRepositoryprotected <T extends IProductComponent> void getAllProductComponentsInternal(Class<T> productCmptClass, List<T> result)
getAllProductComponents(Class) but only searches in own repository not in
referenced ones and adding result to parameter resultproductCmptClass - The class you want to search product components forresult - adding the found product components to result listpublic final List<IProductComponent> getAllProductComponents()
IRuntimeRepositoryNote that this is an expensive operation as all components have to be loaded into memory.
getAllProductComponents in interface IRuntimeRepositoryprotected abstract void getAllProductComponents(List<IProductComponent> result)
public final List<IProductComponentGeneration> getProductComponentGenerations(IProductComponent productCmpt)
IRuntimeRepositoryThe generations are ordered by valid from date in reverse order that means the latest generation (latest valid from date) is the first one, the oldest generation is the last one.
getProductComponentGenerations in interface IRuntimeRepositorypublic abstract void getProductComponentGenerations(IProductComponent productCmpt, List<IProductComponentGeneration> result)
public final List<String> getAllProductComponentIds()
IRuntimeRepositorygetAllProductComponentIds in interface IRuntimeRepositoryprotected abstract void getAllProductComponentIds(List<String> result)
public List<ITable<?>> getAllTables()
IRuntimeRepositoryNote that this is an expensive operation as all tables have to be loaded into memory.
getAllTables in interface IRuntimeRepositoryprotected abstract void getAllTables(List<ITable<?>> result)
getAllTables() but searches only in this repository and not the ones,
this repository depends on. Adds the tables found to the given result list.public final <T extends ITable<?>> T getTable(Class<T> tableClass)
IRuntimeRepositorygetTable in interface IRuntimeRepositoryprotected abstract <T extends ITable<?>> T getTableInternal(Class<T> tableClass)
getTable(Class) but searches only in this repository and not the ones, this
repository depends on.public ITable<?> getTable(String qualifiedTableName)
IRuntimeRepositorygetTable in interface IRuntimeRepositoryprotected abstract ITable<?> getTableInternal(String qualifiedTableName)
getTable(String)) but searches only in this repository and not the ones,
this repository depends on.public final List<IpsTest2> getAllIpsTestCases(IRuntimeRepository runtimeRepository)
IRuntimeRepositorygetAllIpsTestCases in interface IRuntimeRepositorypublic List<IpsTest2> getIpsTestCasesStartingWith(String qNamePrefix, IRuntimeRepository runtimeRepository)
IRuntimeRepositorygetIpsTestCasesStartingWith in interface IRuntimeRepositoryprotected abstract void getAllIpsTestCases(List<IpsTest2> result, IRuntimeRepository runtimeRepository)
getAllIpsTestCases(IRuntimeRepository) but searches only in this repository
and not the ones, this repository depends on. Adds the components found to the given result
list.protected abstract void getIpsTestCasesStartingWith(String qNamePrefix, List<IpsTest2> result, IRuntimeRepository runtimeRepository)
public IpsTest2 getIpsTest(String qName)
IRuntimeRepositorygetIpsTest in interface IRuntimeRepositorypublic IpsTest2 getIpsTest(String qName, IRuntimeRepository runtimeRepository)
IRuntimeRepositorygetIpsTest in interface IRuntimeRepositoryIRuntimeRepository.getIpsTestCase(java.lang.String)public IpsTestCaseBase getIpsTestCase(String qName)
IRuntimeRepositorygetIpsTestCase in interface IRuntimeRepositorypublic IpsTestCaseBase getIpsTestCase(String qName, IRuntimeRepository runtimeRepository)
IRuntimeRepositorygetIpsTestCase in interface IRuntimeRepositoryprotected abstract IpsTestCaseBase getIpsTestCaseInternal(String qName, IRuntimeRepository runtimeRepository)
getIpsTestCase(String, IRuntimeRepository) but searches only in this
repository and not the ones, this repository depends on. The given runtimeRepository
specifies the repository which will be used to instantiate the test case (e.g. the first
repository which contains all dependence repositories).public IpsTestSuite getIpsTestSuite(String qNamePrefix)
IRuntimeRepositorygetIpsTestSuite in interface IRuntimeRepositorypublic IpsTestSuite getIpsTestSuite(String qNamePrefix, IRuntimeRepository runtimeRepository)
IRuntimeRepositorygetIpsTestSuite in interface IRuntimeRepositoryIRuntimeRepository.getIpsTestCase(java.lang.String)public IProductComponentGeneration getNextProductComponentGeneration(IProductComponentGeneration generation)
IRuntimeRepository
If there is no further generation this method returns null.
getNextProductComponentGeneration in interface IRuntimeRepositoryprotected abstract IProductComponentGeneration getNextProductComponentGenerationInternal(IProductComponentGeneration generation)
public int getNumberOfProductComponentGenerations(IProductComponent productCmpt)
IRuntimeRepositorygetNumberOfProductComponentGenerations in interface IRuntimeRepositoryprotected abstract int getNumberOfProductComponentGenerationsInternal(IProductComponent productCmpt)
public final IProductComponentGeneration getPreviousProductComponentGeneration(IProductComponentGeneration generation)
IRuntimeRepository
If there is no previous generation this method returns null.
getPreviousProductComponentGeneration in interface IRuntimeRepositoryprotected abstract IProductComponentGeneration getPreviousProductComponentGenerationInternal(IProductComponentGeneration generation)
public final IProductComponentGeneration getLatestProductComponentGeneration(IProductComponent productCmpt)
IRuntimeRepositorygetLatestProductComponentGeneration in interface IRuntimeRepositoryprotected abstract IProductComponentGeneration getLatestProductComponentGenerationInternal(IProductComponent productCmpt)
public Type getModelType(Class<?> modelObjectClass)
IRuntimeRepositoryIModelType containing the meta information for the given model
object class.getModelType in interface IRuntimeRepositorypublic PolicyCmptType getModelType(IModelObject modelObject)
IRuntimeRepositoryIModelType containing the meta information for the given model
object. This is a convenience method calling getModelType with the model
object's class.getModelType in interface IRuntimeRepositorypublic ProductCmptType getModelType(IProductComponent productComponent)
IRuntimeRepositoryIModelType containing the meta information for the given product
component. This is a convenience method calling getModelType with the product
component class.getModelType in interface IRuntimeRepositorypublic final Set<String> getAllModelTypeImplementationClasses()
IRuntimeRepositoryReturns an empty set if no type is available.
getAllModelTypeImplementationClasses in interface IRuntimeRepositoryprotected abstract void getAllModelTypeImplementationClasses(Set<String> result)
@Deprecated public Object getEnumValue(String uniqueId)
String. You should never use this method! Use
getEnumValue(Class, Object) instead. This method may be returned in
future releases.IRuntimeRepositorygetEnumValue in interface IRuntimeRepositorypublic final <T> T getEnumValue(Class<T> clazz, Object id)
IRuntimeRepositorynull will be
returned. If the provided class cannot be recognized as a Faktor-IPS enumeration or
id is null, null will be returned. This method is only relevant for
Faktor-IPS enumerations whose values are deferred to a content that is held by this
repository.getEnumValue in interface IRuntimeRepositoryclazz - The enumeration class upon which the enumeration value is returnedid - The enum value's identificationnull if it does not existIRuntimeRepository.getExistingEnumValue(Class, Object)public final <T> T getExistingEnumValue(Class<T> clazz, Object id)
IRuntimeRepositoryid is null, null will be
returned. Unlike IRuntimeRepository.getEnumValue(Class, Object), this method will throw an exception
when no enum value matching the parameters is found in the repository.getExistingEnumValue in interface IRuntimeRepositoryclazz - The enumeration class upon which the enumeration value is returnedid - The enum value's identificationIRuntimeRepository.getEnumValue(Class, Object)public final <T> List<T> getEnumValues(Class<T> clazz)
IRuntimeRepositoryList of enumeration values of the provided faktor ips generated
enumeration class. This method is only relevant for faktor ips enumerations whose values are
deferred to a content that is hold by this repository.getEnumValues in interface IRuntimeRepositoryclazz - the enumeration class upon which the list of enumeration values is returnedprotected abstract <T> List<T> getEnumValuesInternal(Class<T> clazz)
protected <T> List<T> getEnumValuesDefinedInType(Class<T> enumClass)
For performance optimization the values are cached in the static map ENUMVALUECACHE.
We only check once if there is already a cached value. We disclaim a double checking with
synchronization because in worst case two threads simply getting the same result. The
ENUMVALUECACHE is realized by a ConcurrentHashMap. Only the first evaluation
will be put into the cache using ConcurrentHashMap.putIfAbsent(Object, Object).
enumClass - The class of which you want to get the enumeration valuespublic void addEnumValueLookupService(IEnumValueLookupService<?> lookup)
IRuntimeRepositoryIEnumValueLookupService.getEnumTypeClass(). If a service is already registered for
the enumeration type, the new service replaces the old one.addEnumValueLookupService in interface IRuntimeRepositorylookup - The new lookup service.public <T> IEnumValueLookupService<T> getEnumValueLookupService(Class<T> enumClazz)
IRuntimeRepositorynull if no
service is registered for the given type.getEnumValueLookupService in interface IRuntimeRepositorypublic void removeEnumValueLookupService(IEnumValueLookupService<?> lookup)
IRuntimeRepositoryremoveEnumValueLookupService in interface IRuntimeRepositoryprotected abstract List<XmlAdapter<?,?>> getAllInternalEnumXmlAdapters(IRuntimeRepository repository)
repository - the runtime repository that needs to be used by the XmlAdapters that are
returned by this methodpublic JAXBContext newJAXBContext(JAXBContext ctx)
JAXBContext that wraps the provided context and extends the marshaling
methods to provide marshaling of Faktor-IPS enumerations and model objects configured by
product components.public JAXBContext newJAXBContext()
newJAXBContext in interface IRuntimeRepositoryRuntimeException - Exceptions that are thrown while trying to load a class from the
class loader or creating the jaxb context are wrapped into a runtime exceptionpublic IFormulaEvaluatorFactory getFormulaEvaluatorFactory()
If you want to support formula evaluation you have to override this method or use
setFormulaEvaluatorFactory(IFormulaEvaluatorFactory).
getFormulaEvaluatorFactory in interface IRuntimeRepositorypublic void setFormulaEvaluatorFactory(IFormulaEvaluatorFactory formulaEvaluatorFactory)
IFormulaEvaluatorFactory.public <T> T getCustomRuntimeObject(Class<T> type, String ipsObjectQualifiedName)
IRuntimeRepositoryT, identified by it's qualified name, or null if no
such object exists in this repository or it's referenced repositories. It is up to extensions
to define which types can be found in the repository (e.g. a
AbstractTocBasedRuntimeRepository could define CustomTocEntryObjects for new
types. If there are no objects of the given type, null is returned. If the
IRuntimeRepository implementation does not allow custom types, null is
returned.getCustomRuntimeObject in interface IRuntimeRepositorytype - a class supported by the IRuntimeRepository implementationipsObjectQualifiedName - the qualified name of the objectnullprotected abstract <T> T getCustomRuntimeObjectInternal(Class<T> type, String ipsObjectQualifiedName)
getCustomRuntimeObject(Class, String) but searches only in this repository
and not the ones this repository depends on.public IRuntimeRepositoryLookup getRuntimeRepositoryLookup()
IRuntimeRepositoryIRuntimeRepositoryLookup that was previously set using
IRuntimeRepository.setRuntimeRepositoryLookup(IRuntimeRepositoryLookup). The
IRuntimeRepositoryLookup is used for serialization of policy components especially
for the ProductConfiguration in configured policy components.getRuntimeRepositoryLookup in interface IRuntimeRepositoryIRuntimeRepositoryLookup that is serialized by a
ProductConfiguration and used to load the product component and its
generation after deserialization.IRuntimeRepositoryLookup,
ProductConfigurationpublic void setRuntimeRepositoryLookup(IRuntimeRepositoryLookup repositoryLookup)
IRuntimeRepositoryIRuntimeRepositoryLookup is needed to enable serialization of policy
components. You need to set a IRuntimeRepositoryLookup before you could serialize any
product configured policy component.setRuntimeRepositoryLookup in interface IRuntimeRepositoryrepositoryLookup - The IRuntimeRepositoryLookup will provide an instance of this
IRuntimeRepository when deserializing a policy component.IRuntimeRepositoryLookupCopyright © 2020. All rights reserved.