private boolean isSubProcess(SProcessInstance processInstance) { return SFlowNodeType.SUB_PROCESS.equals(processInstance.getCallerType()); }
@Override public Set<String> getSupportedState(final FlowNodeType nodeType) { final SFlowNodeType type = SFlowNodeType.valueOf(nodeType.toString()); final Map<Integer, FlowNodeState> states = normalTransitions.get(type); final Set<String> stateNames = new HashSet<>(); for (final FlowNodeState state : states.values()) { stateNames.add(state.getName()); } return stateNames; }
private List<SJobParameter> getJobParameters(final SProcessDefinition processDefinition, final SEventDefinition eventDefinition, final SCatchEventInstance eventInstance) { final List<SJobParameter> jobParameters = new ArrayList<SJobParameter>(); jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("processDefinitionId", processDefinition.getId()).done()); jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("containerType", SFlowElementsContainerType.PROCESS.name()) .done()); jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("eventType", eventDefinition.getType().name()).done()); jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("targetSFlowNodeDefinitionId", eventDefinition.getId()) .done()); if (SFlowNodeType.START_EVENT.equals(eventDefinition.getType())) { final SStartEventDefinition startEvent = (SStartEventDefinition) eventDefinition; jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("isInterrupting", startEvent.isInterrupting()).done()); } if (eventInstance != null) { jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("flowNodeInstanceId", eventInstance.getId()).done()); } return jobParameters; }
public static HumanTaskInstance toHumanTaskInstance(final SHumanTaskInstance sHumanTask, final FlowNodeStateManager flowNodeStateManager) { switch (sHumanTask.getType()) { case USER_TASK: return toUserTaskInstance((SUserTaskInstance) sHumanTask, flowNodeStateManager); case MANUAL_TASK: return toManualTask((SManualTaskInstance) sHumanTask, flowNodeStateManager); default: throw new UnknownElementType(sHumanTask.getType().name()); } }
@Override public void createEventInstance(final SEventInstance eventInstance) throws SEventInstanceCreationException { try { getRecorder().recordInsert(new InsertRecord(eventInstance), EVENT_INSTANCE); } catch (final SRecorderException e) { throw new SEventInstanceCreationException(e); } if (getLogger().isLoggable(getClass(), TechnicalLogSeverity.DEBUG)) { final StringBuilder stb = new StringBuilder(); stb.append("Created "); stb.append(eventInstance.getType().getValue()); stb.append(" <"); stb.append(eventInstance.getName()); stb.append("> with id = <"); stb.append(eventInstance.getId()); stb.append(">, parent process instance id = <"); stb.append(eventInstance.getParentProcessInstanceId()); stb.append(">, root process instance id = <"); stb.append(eventInstance.getRootProcessInstanceId()); stb.append(">, process definition id = <"); stb.append(eventInstance.getProcessDefinitionId()); stb.append(">"); final String message = stb.toString(); getLogger().log(this.getClass(), TechnicalLogSeverity.DEBUG, message); } }
private List<SJobParameter> getJobParameters(final SProcessDefinition processDefinition, final SEventDefinition eventDefinition, final SCatchEventInstance eventInstance) { final List<SJobParameter> jobParameters = new ArrayList<SJobParameter>(); jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("processDefinitionId", processDefinition.getId()).done()); jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("containerType", SFlowElementsContainerType.PROCESS.name()) .done()); jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("eventType", eventDefinition.getType().name()).done()); jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("targetSFlowNodeDefinitionId", eventDefinition.getId()) .done()); if (SFlowNodeType.START_EVENT.equals(eventDefinition.getType())) { final SStartEventDefinition startEvent = (SStartEventDefinition) eventDefinition; jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("isInterrupting", startEvent.isInterrupting()).done()); } if (eventInstance != null) { jobParameters.add(BuilderFactory.get(SJobParameterBuilderFactory.class).createNewInstance("flowNodeInstanceId", eventInstance.getId()).done()); } return jobParameters; }
public static HumanTaskInstance toHumanTaskInstance(final SHumanTaskInstance sHumanTask, final FlowNodeStateManager flowNodeStateManager) { switch (sHumanTask.getType()) { case USER_TASK: return toUserTaskInstance((SUserTaskInstance) sHumanTask, flowNodeStateManager); case MANUAL_TASK: return toManualTask((SManualTaskInstance) sHumanTask, flowNodeStateManager); default: throw new UnknownElementType(sHumanTask.getType().name()); } }
@Override public void createEventInstance(final SEventInstance eventInstance) throws SEventInstanceCreationException { try { getRecorder().recordInsert(new InsertRecord(eventInstance), EVENT_INSTANCE); } catch (final SRecorderException e) { throw new SEventInstanceCreationException(e); } if (getLogger().isLoggable(getClass(), TechnicalLogSeverity.DEBUG)) { final StringBuilder stb = new StringBuilder(); stb.append("Created "); stb.append(eventInstance.getType().getValue()); stb.append(" <"); stb.append(eventInstance.getName()); stb.append("> with id = <"); stb.append(eventInstance.getId()); stb.append(">, parent process instance id = <"); stb.append(eventInstance.getParentProcessInstanceId()); stb.append(">, root process instance id = <"); stb.append(eventInstance.getRootProcessInstanceId()); stb.append(">, process definition id = <"); stb.append(eventInstance.getProcessDefinitionId()); stb.append(">"); final String message = stb.toString(); getLogger().log(this.getClass(), TechnicalLogSeverity.DEBUG, message); } }
public static ArchivedHumanTaskInstance toArchivedHumanTaskInstance(final SAHumanTaskInstance sInstance, final FlowNodeStateManager flowNodeStateManager) { switch (sInstance.getType()) { case MANUAL_TASK: return toArchivedManualTaskInstance((SAManualTaskInstance) sInstance, flowNodeStateManager); case USER_TASK: return toArchivedUserTaskInstance((SAUserTaskInstance) sInstance, flowNodeStateManager); default: throw new UnknownElementType(sInstance.getType().name()); } }
@Override public void createActivityInstance(final SActivityInstance activityInstance) throws SActivityCreationException { try { getRecorder().recordInsert(new InsertRecord(activityInstance), ACTIVITYINSTANCE); } catch (final SRecorderException e) { throw new SActivityCreationException(e); } if (getLogger().isLoggable(getClass(), TechnicalLogSeverity.DEBUG)) { final StringBuilder stb = new StringBuilder(); stb.append("Created "); stb.append(activityInstance.getType().getValue()); stb.append(" <"); stb.append(activityInstance.getName()); stb.append("> with id = <"); stb.append(activityInstance.getId()); if (activityInstance.getParentActivityInstanceId() > 0) { stb.append(">, parent activity instance id = <"); stb.append(activityInstance.getParentActivityInstanceId()); } stb.append(">, parent process instance id = <"); stb.append(activityInstance.getParentProcessInstanceId()); stb.append(">, root process instance id = <"); stb.append(activityInstance.getRootProcessInstanceId()); stb.append(">, process definition id = <"); stb.append(activityInstance.getProcessDefinitionId()); stb.append(">"); getLogger().log(this.getClass(), TechnicalLogSeverity.DEBUG, stb.toString()); } }
@Override public Set<String> getSupportedState(final FlowNodeType nodeType) { final SFlowNodeType type = SFlowNodeType.valueOf(nodeType.toString()); final Map<Integer, FlowNodeState> states = normalTransitions.get(type); final Set<String> stateNames = new HashSet<>(); for (final FlowNodeState state : states.values()) { stateNames.add(state.getName()); } return stateNames; }
@Override public boolean isBoundaryEvent() { return SFlowNodeType.BOUNDARY_EVENT.equals(getType()); }
public static ArchivedHumanTaskInstance toArchivedHumanTaskInstance(final SAHumanTaskInstance sInstance, final FlowNodeStateManager flowNodeStateManager) { switch (sInstance.getType()) { case MANUAL_TASK: return toArchivedManualTaskInstance((SAManualTaskInstance) sInstance, flowNodeStateManager); case USER_TASK: return toArchivedUserTaskInstance((SAUserTaskInstance) sInstance, flowNodeStateManager); default: throw new UnknownElementType(sInstance.getType().name()); } }
@Override public void createActivityInstance(final SActivityInstance activityInstance) throws SActivityCreationException { try { getRecorder().recordInsert(new InsertRecord(activityInstance), ACTIVITYINSTANCE); } catch (final SRecorderException e) { throw new SActivityCreationException(e); } if (getLogger().isLoggable(getClass(), TechnicalLogSeverity.DEBUG)) { final StringBuilder stb = new StringBuilder(); stb.append("Created "); stb.append(activityInstance.getType().getValue()); stb.append(" <"); stb.append(activityInstance.getName()); stb.append("> with id = <"); stb.append(activityInstance.getId()); if (activityInstance.getParentActivityInstanceId() > 0) { stb.append(">, parent activity instance id = <"); stb.append(activityInstance.getParentActivityInstanceId()); } stb.append(">, parent process instance id = <"); stb.append(activityInstance.getParentProcessInstanceId()); stb.append(">, root process instance id = <"); stb.append(activityInstance.getRootProcessInstanceId()); stb.append(">, process definition id = <"); stb.append(activityInstance.getProcessDefinitionId()); stb.append(">"); getLogger().log(this.getClass(), TechnicalLogSeverity.DEBUG, stb.toString()); } }
@Override public boolean isBoundaryEvent() { return SFlowNodeType.BOUNDARY_EVENT.equals(getType()); }
public static FlowNodeInstance toFlowNodeInstance(final SFlowNodeInstance sFlowNode, final FlowNodeStateManager flowNodeStateManager) { switch (sFlowNode.getType()) { case START_EVENT: return toEventInstance((SEventInstance) sFlowNode, flowNodeStateManager); case INTERMEDIATE_CATCH_EVENT: return toEventInstance((SEventInstance) sFlowNode, flowNodeStateManager); case BOUNDARY_EVENT: return toEventInstance((SEventInstance) sFlowNode, flowNodeStateManager); case INTERMEDIATE_THROW_EVENT: return toEventInstance((SEventInstance) sFlowNode, flowNodeStateManager); case END_EVENT: return toEventInstance((SEventInstance) sFlowNode, flowNodeStateManager); case GATEWAY: return toGatewayInstance((SGatewayInstance) sFlowNode, flowNodeStateManager); default: if (sFlowNode instanceof SActivityInstance) { return toActivityInstance((SActivityInstance) sFlowNode, flowNodeStateManager); } throw new UnknownElementType(sFlowNode.getType().name()); } }
public static FlowNodeInstance toFlowNodeInstance(final SFlowNodeInstance sFlowNode, final FlowNodeStateManager flowNodeStateManager) { switch (sFlowNode.getType()) { case START_EVENT: return toEventInstance((SEventInstance) sFlowNode, flowNodeStateManager); case INTERMEDIATE_CATCH_EVENT: return toEventInstance((SEventInstance) sFlowNode, flowNodeStateManager); case BOUNDARY_EVENT: return toEventInstance((SEventInstance) sFlowNode, flowNodeStateManager); case INTERMEDIATE_THROW_EVENT: return toEventInstance((SEventInstance) sFlowNode, flowNodeStateManager); case END_EVENT: return toEventInstance((SEventInstance) sFlowNode, flowNodeStateManager); case GATEWAY: return toGatewayInstance((SGatewayInstance) sFlowNode, flowNodeStateManager); default: if (sFlowNode instanceof SActivityInstance) { return toActivityInstance((SActivityInstance) sFlowNode, flowNodeStateManager); } throw new UnknownElementType(sFlowNode.getType().name()); } }