Interface RuleEngineContainerRegistry<RELEASEHOLDER,CONTAINER>
-
- Type Parameters:
RELEASEHOLDER- type of the knowledge base container module release identifierCONTAINER- type of the knowledge base 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 knowledge base container reference, identified by release idbooleanisLockedForReading()Check if the registry is locked for readingbooleanisLockedForWriting()Check if the registry is locked for writingvoidlockReadingRegistry()lock registry for reading operationsvoidlockWritingRegistry()lock registry for writing operationsjava.util.Optional<RELEASEHOLDER>lookupForDeployedRelease(java.lang.String... releaseTokens)Lookup for a deployed knowledge base container release id by partial release id tokens (e.g.CONTAINERremoveActiveContainer(RELEASEHOLDER releaseHolder)Remove knowledge base container identified by release idvoidsetActiveContainer(RELEASEHOLDER releaseHolder, CONTAINER rulesContainer)Adds another active container, identified by release, to a repositoryvoidunlockReadingRegistry()unlock registry for reading operationsvoidunlockWritingRegistry()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- knowledge base container module release identifierrulesContainer- knowledge base container instance
-
getActiveContainer
CONTAINER getActiveContainer(RELEASEHOLDER releaseHolder)
Retrieve knowledge base container reference, identified by release id- Parameters:
releaseHolder- knowledge base container module release identifier- Returns:
- knowledge base container instance
-
removeActiveContainer
CONTAINER removeActiveContainer(RELEASEHOLDER releaseHolder)
Remove knowledge base container identified by release id- Parameters:
releaseHolder- knowledge base 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 knowledge base container release id by partial release id tokens (e.g. group id and artifact id)- Parameters:
releaseTokens- knowledge base container module release identifier- Returns:
- optional of container release id
-
lockReadingRegistry
void lockReadingRegistry()
lock registry for reading operations
-
unlockReadingRegistry
void unlockReadingRegistry()
unlock registry for reading operations
-
lockWritingRegistry
void lockWritingRegistry()
lock registry for writing operations
-
unlockWritingRegistry
void unlockWritingRegistry()
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
-
-