public final class CmmnHelper extends Object
| Modifier and Type | Field and Description |
|---|---|
protected static org.slf4j.Logger |
LOG |
| Modifier and Type | Method and Description |
|---|---|
static boolean |
archiveCase(String caseClientId,
com.edorasware.commons.core.entity.State state,
com.edorasware.commons.core.entity.UserId runAsUser,
com.edorasware.commons.core.any.AnyWorkObjectService anyWorkObjectService,
CaseArchiveManager caseArchiveManager,
com.edorasware.commons.core.identity.CurrentUserService currentUserService)
Archive a case by setting the passed state.
|
static void |
archiveParentCaseRecursive(com.edorasware.cmmn.model.structure.CasePlanModel caze,
com.edorasware.commons.core.entity.UserId runAsUser,
com.edorasware.cmmn.model.TransitionData transitionData,
com.edorasware.cmmn.engine.hooks.PersistenceListeners persistenceListeners,
com.edorasware.cmmn.engine.core.CmmnService cmmnService,
com.edorasware.commons.core.any.AnyWorkObjectService anyWorkObjectService,
CaseArchiveManager caseArchiveManager,
com.edorasware.commons.core.identity.CurrentUserService currentUserService)
If we're archiving a non-blocking sub-case, we may have to check for terminal parent cases which can now also be archived.
|
static void |
collectPlanItems(com.edorasware.cmmn.model.xml.TStage stage,
List<com.edorasware.cmmn.model.xml.TPlanItem> result,
Class<? extends com.edorasware.cmmn.model.xml.TPlanItemDefinition> type)
Recursively visit stages and collect plan items that are assignable to the type passed in (including stages themselves provided the type
parameter matches the stage's type).
|
static com.edorasware.cmmn.model.TransitionData |
createTransitionData(Map<String,Object> formData,
Map<String,Object> parameters,
User user) |
static com.edorasware.cmmn.model.TransitionData |
createTransitionData(Map<String,String[]> parameters,
User user) |
static com.edorasware.cmmn.model.TransitionData |
createTransitionData(User user) |
static List<com.edorasware.cmmn.model.xml.THumanTask> |
extractHumanTasks(com.edorasware.cmmn.model.xml.TDefinitions tDefinitions)
Given the structure of a CMMN XML in
tDefinitions, navigate though it and return all contained THumanTask elements as a list. |
static List<com.edorasware.cmmn.model.xml.TPlanItem> |
extractPlanItems(com.edorasware.cmmn.model.xml.TDefinitions tDefinitions,
Class<? extends com.edorasware.cmmn.model.xml.TPlanItemDefinition> type)
Given the structure of a CMMN XML in
tDefinitions, navigate though it and return all plan items that
are assignable to the type passed in. |
static com.edorasware.commons.core.any.AnyWorkObject |
findWorkObject(com.edorasware.commons.core.any.AnyWorkObjectService anyWorkObjectService,
com.edorasware.commons.core.entity.WorkObjectId workObjectId) |
static com.edorasware.commons.core.any.AnyWorkObject |
findWorkObject(com.edorasware.commons.core.any.AnyWorkObjectService anyWorkObjectService,
com.edorasware.commons.core.entity.WorkObjectId workObjectId,
boolean withVariables) |
static com.edorasware.cmmn.model.xml.TCase |
getCase(com.edorasware.cmmn.model.xml.TDefinitions tDefinitions)
Get the case for a CMMN XML.
|
static String |
getInitFormRef(com.edorasware.cmmn.model.structure.PlanItem planItem,
com.edorasware.commons.core.any.AnyWorkObjectDefinitionService workObjectDefinitionService)
Implementation for ticket CLD-7314 (supporting Case Task and Process Task init forms).
|
static com.edorasware.commons.core.entity.UserId |
getWorkObjectOwnerId(com.edorasware.commons.core.any.AnyWorkObjectService anyWorkObjectService,
com.edorasware.commons.core.entity.WorkObjectId workObjectId) |
static boolean |
handleSpecificFields(com.edorasware.commons.core.service.entity.WorkObjectService workObjectService,
com.edorasware.commons.core.entity.WorkObjectId workObjectId,
String variableName,
Object variableValue,
BaseVariableHandlingService variableHandlingService)
Important: The same set of variables is dealt with in other methods in this class.
|
static boolean |
handleSpecificFields(com.edorasware.commons.core.entity.WorkObject builderTemplate,
com.edorasware.commons.core.entity.WorkObject.WorkObjectBuilder builder,
String variableName,
Object variableValue,
BaseVariableHandlingService variableHandlingService) |
static boolean |
isNonBlockingSubCase(com.edorasware.cmmn.model.structure.CasePlanModel caze) |
static boolean |
isProcessTask(com.edorasware.cmmn.model.structure.PlanItem planItem)
A ProcessTask plan item with a non blank/"EMPTY" BPMN process reference (clientRef) is considered a
process task (in contrast to a service task - see
isServiceTask(com.edorasware.cmmn.model.structure.PlanItem)). |
static boolean |
isServiceTask(com.edorasware.cmmn.model.structure.PlanItem planItem)
By convention, a ProcessTask plan item with no edoras one BPMN process reference is considered
a service task.
|
static boolean |
isSet(Object object) |
static HashMap<String,Object> |
removeSpecialFields(Map<String,Object> inputMap) |
static void |
setMapValueWithDefault(Map<String,Object> map,
String property,
Object value,
String defaultValue)
Put a named property value into a map, using a default value if the passed value is
null. |
static void |
trySetMapValueWithDefault(Map<String,Object> map,
String property,
Object value,
String defaultValue)
Put a named property value into a map, using a default value if the passed value is
null. |
static HashMap<String,Object> |
workObjectToMap(com.edorasware.commons.core.entity.WorkObject<?,?,?> workObject) |
public static boolean archiveCase(String caseClientId, com.edorasware.commons.core.entity.State state, com.edorasware.commons.core.entity.UserId runAsUser, com.edorasware.commons.core.any.AnyWorkObjectService anyWorkObjectService, CaseArchiveManager caseArchiveManager, com.edorasware.commons.core.identity.CurrentUserService currentUserService)
null, will archive the case with the privileges of the owner of the case to be archived.true, if the case was archived (state change), false if the case was already archived.public static void archiveParentCaseRecursive(com.edorasware.cmmn.model.structure.CasePlanModel caze,
com.edorasware.commons.core.entity.UserId runAsUser,
com.edorasware.cmmn.model.TransitionData transitionData,
com.edorasware.cmmn.engine.hooks.PersistenceListeners persistenceListeners,
com.edorasware.cmmn.engine.core.CmmnService cmmnService,
com.edorasware.commons.core.any.AnyWorkObjectService anyWorkObjectService,
CaseArchiveManager caseArchiveManager,
com.edorasware.commons.core.identity.CurrentUserService currentUserService)
public static boolean isNonBlockingSubCase(com.edorasware.cmmn.model.structure.CasePlanModel caze)
public static boolean isServiceTask(com.edorasware.cmmn.model.structure.PlanItem planItem)
public static boolean isProcessTask(com.edorasware.cmmn.model.structure.PlanItem planItem)
isServiceTask(com.edorasware.cmmn.model.structure.PlanItem)).public static List<com.edorasware.cmmn.model.xml.THumanTask> extractHumanTasks(com.edorasware.cmmn.model.xml.TDefinitions tDefinitions)
tDefinitions, navigate though it and return all contained THumanTask elements as a list.tDefinitions - the XML model in which to look.THumanTask elements found. May be empty but never null.public static List<com.edorasware.cmmn.model.xml.TPlanItem> extractPlanItems(com.edorasware.cmmn.model.xml.TDefinitions tDefinitions, Class<? extends com.edorasware.cmmn.model.xml.TPlanItemDefinition> type)
tDefinitions, navigate though it and return all plan items that
are assignable to the type passed in. Note: the CasePlanModel itself is never returned as a plan item.tDefinitions - the XML model in which to look.type - the type of plan item you're interested in.TPlanItemDefinition elements found. May be empty but never null.public static com.edorasware.cmmn.model.xml.TCase getCase(com.edorasware.cmmn.model.xml.TDefinitions tDefinitions)
tDefinitions - the root element.public static void collectPlanItems(com.edorasware.cmmn.model.xml.TStage stage,
List<com.edorasware.cmmn.model.xml.TPlanItem> result,
Class<? extends com.edorasware.cmmn.model.xml.TPlanItemDefinition> type)
stage - the starting stage.result - the list to which to add the elements found.type - the type of plan item you're interested in.public static boolean handleSpecificFields(com.edorasware.commons.core.entity.WorkObject builderTemplate,
com.edorasware.commons.core.entity.WorkObject.WorkObjectBuilder builder,
String variableName,
Object variableValue,
BaseVariableHandlingService variableHandlingService)
public static boolean handleSpecificFields(com.edorasware.commons.core.service.entity.WorkObjectService workObjectService,
com.edorasware.commons.core.entity.WorkObjectId workObjectId,
String variableName,
Object variableValue,
BaseVariableHandlingService variableHandlingService)
Important: The same set of variables is dealt with in other methods in this class.
public static HashMap<String,Object> workObjectToMap(com.edorasware.commons.core.entity.WorkObject<?,?,?> workObject)
public static HashMap<String,Object> removeSpecialFields(Map<String,Object> inputMap)
public static void trySetMapValueWithDefault(Map<String,Object> map, String property, Object value, String defaultValue)
null. The method
only puts the value into the destination map if there is no such entry yet.public static void setMapValueWithDefault(Map<String,Object> map, String property, Object value, String defaultValue)
null.public static boolean isSet(Object object)
public static com.edorasware.commons.core.entity.UserId getWorkObjectOwnerId(com.edorasware.commons.core.any.AnyWorkObjectService anyWorkObjectService,
com.edorasware.commons.core.entity.WorkObjectId workObjectId)
public static com.edorasware.commons.core.any.AnyWorkObject findWorkObject(com.edorasware.commons.core.any.AnyWorkObjectService anyWorkObjectService,
com.edorasware.commons.core.entity.WorkObjectId workObjectId)
public static com.edorasware.commons.core.any.AnyWorkObject findWorkObject(com.edorasware.commons.core.any.AnyWorkObjectService anyWorkObjectService,
com.edorasware.commons.core.entity.WorkObjectId workObjectId,
boolean withVariables)
public static com.edorasware.cmmn.model.TransitionData createTransitionData(User user)
public static com.edorasware.cmmn.model.TransitionData createTransitionData(Map<String,String[]> parameters, User user)
public static com.edorasware.cmmn.model.TransitionData createTransitionData(Map<String,Object> formData, Map<String,Object> parameters, User user)
public static String getInitFormRef(com.edorasware.cmmn.model.structure.PlanItem planItem, com.edorasware.commons.core.any.AnyWorkObjectDefinitionService workObjectDefinitionService)
Copyright © 2010 - 2017 edorasware ag. All Rights Reserved.