Interface RuleEngineContainerRegistry<RELEASEHOLDER,CONTAINER>
-
- Type Parameters:
RELEASEHOLDER- type of the knowledgebase container module release identifierCONTAINER- type of the knowledgebase container
- All Known Implementing Classes:
DefaultRuleEngineContainerRegistry
public interface RuleEngineContainerRegistry<RELEASEHOLDER,CONTAINER>Rule Engine container registry interface. Declares methods for rule engine rules container housekeeping
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description CONTAINERgetActiveContainer(RELEASEHOLDER releaseHolder)Retrieve knowledgebase container reference, identified fy release idbooleanisLockedForReading()Check if the registry is locked for readingbooleanisLockedForWriting()Check if the registry is locked for writingvoidlockReadingRegistry()lock or unlock registry for reading operationsvoidlockWritingRegistry()lock or unlock registry for writing operationsjava.util.Optional<RELEASEHOLDER>lookupForDeployedRelease(java.lang.String... releaseTokens)Lookup for a deployed knowledgebase container release id by partial release id tokens (e.g.CONTAINERremoveActiveContainer(RELEASEHOLDER releaseHolder)Remove knowledgebase container identified by release idvoidsetActiveContainer(RELEASEHOLDER releaseHolder, CONTAINER rulesContainer)Adds another active container, identified by release, to a repositoryvoidunlockReadingRegistry()unlock or unlock registry for reading operationsvoidunlockWritingRegistry()unlock or unlock registry for writing operations
-
-
-
Method Detail
-
setActiveContainer
void setActiveContainer(RELEASEHOLDER releaseHolder, CONTAINER rulesContainer)
Adds another active container, identified by release, to a repository- Parameters:
releaseHolder- knowledgebase container module release identifierrulesContainer- knowledgebase container instance
-
getActiveContainer
CONTAINER getActiveContainer(RELEASEHOLDER releaseHolder)
Retrieve knowledgebase container reference, identified fy release id- Parameters:
releaseHolder- knowledgebase container module release identifier- Returns:
- knowledgebase container instance
-
removeActiveContainer
CONTAINER removeActiveContainer(RELEASEHOLDER releaseHolder)
Remove knowledgebase container identified by release id- Parameters:
releaseHolder- knowledgebase container module release identifier- Returns:
- removed knowledge base container instance, null if not found
-
lookupForDeployedRelease
java.util.Optional<RELEASEHOLDER> lookupForDeployedRelease(java.lang.String... releaseTokens)
Lookup for a deployed knowledgebase container release id by partial release id tokens (e.g. group id and artifact id)- Parameters:
releaseTokens- knowledgebase container module release identifier- Returns:
- optional of container release id
-
lockReadingRegistry
void lockReadingRegistry()
lock or unlock registry for reading operations
-
unlockReadingRegistry
void unlockReadingRegistry()
unlock or unlock registry for reading operations
-
lockWritingRegistry
void lockWritingRegistry()
lock or unlock registry for writing operations
-
unlockWritingRegistry
void unlockWritingRegistry()
unlock or unlock registry for writing operations
-
isLockedForReading
boolean isLockedForReading()
Check if the registry is locked for reading- Returns:
- true if the registry is in the state locked for reading
-
isLockedForWriting
boolean isLockedForWriting()
Check if the registry is locked for writing- Returns:
- true if the registry is in the state locked for writing
-
-