/** * Adds an input parameter on the current sub-process entity. * * @param parentProcessDatafieldName * the parent process variable name * @param subProcessDatafieldName * the sub-process variable name * @return the ProcessBuilder in order to add BPM elements */ public ProcessBuilder addSubProcessInParameter(final String parentProcessDatafieldName, final String subProcessDatafieldName) { Misc.checkArgsNotNull(parentProcessDatafieldName, subProcessDatafieldName); if ("".equals(parentProcessDatafieldName.trim())) { problems.add(new Problem("Parent process datafield name is an empty string.", Problem.SEVERITY_ERROR)); } if ("".equals(subProcessDatafieldName.trim())) { problems.add(new Problem("Sub process datafield name is an empty string.", Problem.SEVERITY_ERROR)); } final Object obj = peek(ActivityDefinitionImpl.class); if (isActivity(obj)) { final ActivityDefinitionImpl activity = (ActivityDefinitionImpl) obj; activity.addSubflowInParameter(new SubflowParameterDefinitionImpl(parentProcessDatafieldName, subProcessDatafieldName)); } else { problems.add(new Problem("Unable to add sub process parameter {" + parentProcessDatafieldName + ", " + subProcessDatafieldName + "} on an object of type: " + getClass(obj), Problem.SEVERITY_ERROR)); } return this; }
/** * Adds an input parameter on the current sub-process entity. * * @param parentProcessDatafieldName * the parent process variable name * @param subProcessDatafieldName * the sub-process variable name * @return the ProcessBuilder in order to add BPM elements */ public ProcessBuilder addSubProcessInParameter(final String parentProcessDatafieldName, final String subProcessDatafieldName) { Misc.checkArgsNotNull(parentProcessDatafieldName, subProcessDatafieldName); if ("".equals(parentProcessDatafieldName.trim())) { problems.add(new Problem("Parent process datafield name is an empty string.", Problem.SEVERITY_ERROR)); } if ("".equals(subProcessDatafieldName.trim())) { problems.add(new Problem("Sub process datafield name is an empty string.", Problem.SEVERITY_ERROR)); } final Object obj = peek(ActivityDefinitionImpl.class); if (isActivity(obj)) { final ActivityDefinitionImpl activity = (ActivityDefinitionImpl) obj; activity.addSubflowInParameter(new SubflowParameterDefinitionImpl(parentProcessDatafieldName, subProcessDatafieldName)); } else { problems.add(new Problem("Unable to add sub process parameter {" + parentProcessDatafieldName + ", " + subProcessDatafieldName + "} on an object of type: " + getClass(obj), Problem.SEVERITY_ERROR)); } return this; }