Class CmmnDeployer
java.lang.Object
org.flowable.cmmn.engine.impl.deployer.CmmnDeployer
- All Implemented Interfaces:
EngineDeployer
TODO: many similarities with BpmnDeployer, see if it can be merged to the common module
- Author:
- Joram Barrez
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected CaseDefinitionDiagramHelperstatic final String[]protected CmmnEngineConfigurationprotected CmmnParserprotected IdGeneratorprotected booleanFields inherited from interface EngineDeployer
DEFAULT_UNDEPLOY_ORDER -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAuthorizationsForNewCaseDefinition(Case caze, CaseDefinitionEntity caseDefinition) protected voidaddAuthorizationsFromIterator(List<String> expressions, CaseDefinitionEntity caseDefinition, String expressionType) protected voidcopyDeploymentValuesToCaseDefinitions(EngineDeployment deployment, List<CaseDefinitionEntity> caseDefinitionEntities) protected voidcreateAndPersistNewDiagramsIfNeeded(CmmnParseResult parseResult) Creates new diagrams for case definitions if the deployment is new, the case definition in question supports it, and the engine is configured to make new diagrams.protected voiddeleteObsoleteEventSubscriptions(CaseDefinitionEntity previousCaseDefinition, Collection<String> eventTypes, EventSubscriptionService eventSubscriptionService) voiddeploy(EngineDeployment deployment, Map<String, Object> deploymentSettings) protected CmmnModelgetCaseModel(CmmnParseResult parseResult, CaseDefinitionEntity caseDefinition) protected CaseDefinitionEntitygetMostRecentVersionOfCaseDefinition(CaseDefinitionEntity caseDefinitionEntity) protected CaseDefinitionEntitygetPersistedInstanceOfCaseDefinition(CaseDefinitionEntity caseDefinitionEntity) protected Map<CaseDefinitionEntity, CaseDefinitionEntity> getPreviousVersionsOfCaseDefinitions(CmmnParseResult parseResult) static booleanisCmmnResource(String resourceName) booleanprotected voidprotected voidpersistCaseDefinitions(CmmnParseResult parseResult) voidsetCaseDefinitionDiagramHelper(CaseDefinitionDiagramHelper caseDefinitionDiagramHelper) protected voidsetCaseDefinitionDiagramNames(CmmnParseResult parseResult) Updates all the case definition entities to have the correct diagram resource name.protected voidsetCaseDefinitionVersionsAndIds(CmmnParseResult parseResult, Map<CaseDefinitionEntity, CaseDefinitionEntity> mapNewToOldCaseDefinitions) voidsetCmmnParser(CmmnParser cmmnParser) voidsetIdGenerator(IdGenerator idGenerator) protected voidsetResourceNamesOnCaseDefinitions(CmmnParseResult parseResult) voidsetUsePrefixId(boolean usePrefixId) voidundeploy(EngineDeployment parentDeployment, boolean cascade) protected voidupdateCachingAndArtifacts(CmmnParseResult parseResult) protected voidupdateEventSubscriptions(CmmnParseResult parseResult, Map<CaseDefinitionEntity, CaseDefinitionEntity> mapOfNewCaseDefinitionToPreviousVersion) protected voidverifyCaseDefinitionsDoNotShareKeys(Collection<CaseDefinitionEntity> caseDefinitionEntities) Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface EngineDeployer
getUndeployOrder
-
Field Details
-
CMMN_RESOURCE_SUFFIXES
-
cmmnEngineConfiguration
-
idGenerator
-
cmmnParser
-
caseDefinitionDiagramHelper
-
usePrefixId
protected boolean usePrefixId
-
-
Constructor Details
-
CmmnDeployer
-
-
Method Details
-
deploy
- Specified by:
deployin interfaceEngineDeployer
-
isCmmnResource
-
createAndPersistNewDiagramsIfNeeded
Creates new diagrams for case definitions if the deployment is new, the case definition in question supports it, and the engine is configured to make new diagrams. When this method creates a new diagram, it also persists it via the ResourceEntityManager and adds it to the resources of the deployment. -
setCaseDefinitionDiagramNames
Updates all the case definition entities to have the correct diagram resource name. Must be called after createAndPersistNewDiagramsAsNeeded to ensure that any newly-created diagrams already have their resources attached to the deployment. -
getPreviousVersionsOfCaseDefinitions
protected Map<CaseDefinitionEntity, CaseDefinitionEntity> getPreviousVersionsOfCaseDefinitions(CmmnParseResult parseResult) -
setCaseDefinitionVersionsAndIds
protected void setCaseDefinitionVersionsAndIds(CmmnParseResult parseResult, Map<CaseDefinitionEntity, CaseDefinitionEntity> mapNewToOldCaseDefinitions) -
persistCaseDefinitions
-
updateEventSubscriptions
protected void updateEventSubscriptions(CmmnParseResult parseResult, Map<CaseDefinitionEntity, CaseDefinitionEntity> mapOfNewCaseDefinitionToPreviousVersion) -
deleteObsoleteEventSubscriptions
protected void deleteObsoleteEventSubscriptions(CaseDefinitionEntity previousCaseDefinition, Collection<String> eventTypes, EventSubscriptionService eventSubscriptionService) -
getCaseModel
-
makeCaseDefinitionsConsistentWithPersistedVersions
-
copyDeploymentValuesToCaseDefinitions
protected void copyDeploymentValuesToCaseDefinitions(EngineDeployment deployment, List<CaseDefinitionEntity> caseDefinitionEntities) -
setResourceNamesOnCaseDefinitions
-
getMostRecentVersionOfCaseDefinition
protected CaseDefinitionEntity getMostRecentVersionOfCaseDefinition(CaseDefinitionEntity caseDefinitionEntity) -
getPersistedInstanceOfCaseDefinition
protected CaseDefinitionEntity getPersistedInstanceOfCaseDefinition(CaseDefinitionEntity caseDefinitionEntity) -
updateCachingAndArtifacts
-
addAuthorizationsForNewCaseDefinition
-
addAuthorizationsFromIterator
protected void addAuthorizationsFromIterator(List<String> expressions, CaseDefinitionEntity caseDefinition, String expressionType) -
getIdGenerator
-
setIdGenerator
-
getCmmnParser
-
setCmmnParser
-
getCaseDefinitionDiagramHelper
-
setCaseDefinitionDiagramHelper
-
isUsePrefixId
public boolean isUsePrefixId() -
setUsePrefixId
public void setUsePrefixId(boolean usePrefixId) -
undeploy
- Specified by:
undeployin interfaceEngineDeployer
-