use of org.kie.workbench.common.stunner.bpmn.definition.property.task.Skippable in project kie-wb-common by kiegroup.
the class TaskConverter method userTask.
private BpmnNode userTask(org.eclipse.bpmn2.UserTask task) {
Node<View<UserTask>, Edge> node = factoryManager.newNode(task.getId(), UserTask.class);
UserTask definition = node.getContent().getDefinition();
UserTaskPropertyReader p = propertyReaderFactory.of(task);
definition.setGeneral(new TaskGeneralSet(new Name(p.getName()), new Documentation(p.getDocumentation())));
definition.setSimulationSet(p.getSimulationSet());
definition.setExecutionSet(new UserTaskExecutionSet(new TaskName(p.getTaskName()), p.getActors(), new Groupid(p.getGroupid()), p.getAssignmentsInfo(), new IsAsync(p.isAsync()), new Skippable(p.isSkippable()), new Priority(p.getPriority()), new Subject(p.getSubject()), new Description(p.getDescription()), new CreatedBy(p.getCreatedBy()), new AdHocAutostart(p.isAdHocAutostart()), new OnEntryAction(p.getOnEntryAction()), new OnExitAction(p.getOnExitAction())));
node.getContent().setBounds(p.getBounds());
definition.setDimensionsSet(p.getRectangleDimensionsSet());
definition.setBackgroundSet(p.getBackgroundSet());
definition.setFontSet(p.getFontSet());
return BpmnNode.of(node);
}
use of org.kie.workbench.common.stunner.bpmn.definition.property.task.Skippable in project kie-wb-common by kiegroup.
the class TaskConverterPriorityTest method setPriorityMvel.
@Test
public void setPriorityMvel() {
propertyWriterFactory = new PropertyWriterFactory();
taskConverter = spy(new TaskConverter(propertyWriterFactory));
when(n.getContent()).thenReturn(view);
when(view.getBounds()).thenReturn(Bounds.create(0, 0, 10, 10));
when(view.getDefinition()).thenReturn(definition);
when(general.getName()).thenReturn(new Name("Name"));
when(general.getDocumentation()).thenReturn(new Documentation());
when(definition.getGeneral()).thenReturn(general);
when(definition.getSimulationSet()).thenReturn(new SimulationSet());
when(definition.getExecutionSet()).thenReturn(baseUserTaskExecutionSet);
when(baseUserTaskExecutionSet.getTaskName()).thenReturn(new TaskName("taskName"));
when(baseUserTaskExecutionSet.getActors()).thenReturn(new Actors());
when(baseUserTaskExecutionSet.getAssignmentsinfo()).thenReturn(new AssignmentsInfo());
when(baseUserTaskExecutionSet.getReassignmentsInfo()).thenReturn(new ReassignmentsInfo());
when(baseUserTaskExecutionSet.getNotificationsInfo()).thenReturn(new NotificationsInfo());
when(baseUserTaskExecutionSet.getSkippable()).thenReturn(new Skippable(true));
when(baseUserTaskExecutionSet.getGroupid()).thenReturn(new Groupid("groupId"));
when(baseUserTaskExecutionSet.getSubject()).thenReturn(new Subject());
when(baseUserTaskExecutionSet.getDescription()).thenReturn(new Description());
when(baseUserTaskExecutionSet.getPriority()).thenReturn(new TaskPriority("#{varOne}"));
when(baseUserTaskExecutionSet.getIsAsync()).thenReturn(new IsAsync(true));
when(baseUserTaskExecutionSet.getCreatedBy()).thenReturn(new CreatedBy());
when(baseUserTaskExecutionSet.getAdHocAutostart()).thenReturn(new AdHocAutostart());
when(baseUserTaskExecutionSet.getIsMultipleInstance()).thenReturn(new IsMultipleInstance(false));
when(baseUserTaskExecutionSet.getOnEntryAction()).thenReturn(new OnEntryAction(new ScriptTypeListValue().addValue(new ScriptTypeValue("java", ""))));
when(baseUserTaskExecutionSet.getOnExitAction()).thenReturn(new OnExitAction(new ScriptTypeListValue().addValue(new ScriptTypeValue("java", ""))));
when(baseUserTaskExecutionSet.getContent()).thenReturn(new Content());
when(baseUserTaskExecutionSet.getSlaDueDate()).thenReturn(new SLADueDate());
when(definition.getAdvancedData()).thenReturn(new AdvancedData(new MetaDataAttributes()));
doCallRealMethod().when(taskConverter).userTask(any());
final UserTaskPropertyWriter propertyWriter = (UserTaskPropertyWriter) taskConverter.userTask(n);
assertTrue(propertyWriter.getPriority().equals("<![CDATA[#{varOne}]]>"));
System.out.println("Priority: " + propertyWriter.getPriority());
}
use of org.kie.workbench.common.stunner.bpmn.definition.property.task.Skippable in project kie-wb-common by kiegroup.
the class TaskConverterPriorityTest method setPriorityEscapeSpecialChars.
@Test
public void setPriorityEscapeSpecialChars() {
propertyWriterFactory = new PropertyWriterFactory();
taskConverter = spy(new TaskConverter(propertyWriterFactory));
when(n.getContent()).thenReturn(view);
when(view.getBounds()).thenReturn(Bounds.create(0, 0, 10, 10));
when(view.getDefinition()).thenReturn(definition);
when(general.getName()).thenReturn(new Name("Name"));
when(general.getDocumentation()).thenReturn(new Documentation());
when(definition.getGeneral()).thenReturn(general);
when(definition.getSimulationSet()).thenReturn(new SimulationSet());
when(definition.getExecutionSet()).thenReturn(baseUserTaskExecutionSet);
when(baseUserTaskExecutionSet.getTaskName()).thenReturn(new TaskName("taskName"));
when(baseUserTaskExecutionSet.getActors()).thenReturn(new Actors());
when(baseUserTaskExecutionSet.getAssignmentsinfo()).thenReturn(new AssignmentsInfo());
when(baseUserTaskExecutionSet.getReassignmentsInfo()).thenReturn(new ReassignmentsInfo());
when(baseUserTaskExecutionSet.getNotificationsInfo()).thenReturn(new NotificationsInfo());
when(baseUserTaskExecutionSet.getSkippable()).thenReturn(new Skippable(true));
when(baseUserTaskExecutionSet.getGroupid()).thenReturn(new Groupid("groupId"));
when(baseUserTaskExecutionSet.getSubject()).thenReturn(new Subject());
when(baseUserTaskExecutionSet.getDescription()).thenReturn(new Description());
when(baseUserTaskExecutionSet.getPriority()).thenReturn(new TaskPriority("#{varOne<>&\"}"));
when(baseUserTaskExecutionSet.getIsAsync()).thenReturn(new IsAsync(true));
when(baseUserTaskExecutionSet.getCreatedBy()).thenReturn(new CreatedBy());
when(baseUserTaskExecutionSet.getAdHocAutostart()).thenReturn(new AdHocAutostart());
when(baseUserTaskExecutionSet.getIsMultipleInstance()).thenReturn(new IsMultipleInstance(false));
when(baseUserTaskExecutionSet.getOnEntryAction()).thenReturn(new OnEntryAction(new ScriptTypeListValue().addValue(new ScriptTypeValue("java", ""))));
when(baseUserTaskExecutionSet.getOnExitAction()).thenReturn(new OnExitAction(new ScriptTypeListValue().addValue(new ScriptTypeValue("java", ""))));
when(baseUserTaskExecutionSet.getContent()).thenReturn(new Content());
when(baseUserTaskExecutionSet.getSlaDueDate()).thenReturn(new SLADueDate());
when(definition.getAdvancedData()).thenReturn(new AdvancedData(new MetaDataAttributes()));
doCallRealMethod().when(taskConverter).userTask(any());
final UserTaskPropertyWriter propertyWriter = (UserTaskPropertyWriter) taskConverter.userTask(n);
assertTrue(propertyWriter.getPriority().equals("<![CDATA[#{varOne<>&"}]]>"));
}
use of org.kie.workbench.common.stunner.bpmn.definition.property.task.Skippable in project kie-wb-common by kiegroup.
the class ClientBPMNDocumentationServiceTest method setUp.
@Before
@SuppressWarnings("all")
public void setUp() throws Exception {
// DiagramSet
processName = new Name(PROCESS_NAME);
processDocumentation = new Documentation(PROCESS_DOCUMENTATION);
packageProperty = new Package(PROCESS_PACKAGE);
type = new ProcessType();
version = new Version(PROCESS_VERSION);
adHoc = new AdHoc(PROCESS_IS_ADHOC);
processInstanceDescription = new ProcessInstanceDescription(PROCESS_DECRIPTION);
executable = new Executable(PROCESS_IS_EXECUTABLE);
processId = new Id(PROCESS_UUID);
globalVariables = new GlobalVariables(GLOBAL_VARIABLES);
metaDataAttributes = new MetaDataAttributes(METADATA);
slaDueDate = new SLADueDate(SLA_DUE_DATE);
ImportsValue importsValue = new ImportsValue();
importsValue.addImport(new DefaultImport(CLASS_NAME + "1"));
importsValue.addImport(new DefaultImport(CLASS_NAME + "2"));
importsValue.addImport(new DefaultImport(CLASS_NAME + "3"));
importsValue.addImport(new WSDLImport(LOCATION + "1", NAMESPACE + "1"));
importsValue.addImport(new WSDLImport(LOCATION + "2", NAMESPACE + "2"));
importsValue.addImport(new WSDLImport(LOCATION + "3", NAMESPACE + "3"));
importsValue.addImport(new WSDLImport(LOCATION + "4", NAMESPACE + "4"));
imports = new Imports(importsValue);
diagramSet = new DiagramSet(processName, processDocumentation, processId, packageProperty, type, version, adHoc, processInstanceDescription, imports, executable, slaDueDate);
// ProcessData
processVariables = new ProcessVariables(VARIABLES);
processData = new ProcessData(processVariables);
// AdvancedData
globalVariables = new GlobalVariables(GLOBAL_VARIABLES);
metaDataAttributes = new MetaDataAttributes(METADATA);
advancedData = new RootProcessAdvancedData(globalVariables, metaDataAttributes);
bpmnDiagram = new BPMNDiagramImpl(diagramSet, processData, new CaseManagementSet(), new BackgroundSet(), new FontSet(), new RectangleDimensionsSet(), advancedData);
userTask = new UserTask(new TaskGeneralSet(new Name(TASK_NAME), new Documentation(TASK_DOC)), new UserTaskExecutionSet(new TaskName(TASK_NAME), new Actors(), new Groupid(TASK_GROUPID), new AssignmentsInfo(), new NotificationsInfo(), new ReassignmentsInfo(), new IsAsync(true), new Skippable(), new TaskPriority(TASK_PRIORITY), new Subject(TASK_SUBJECT), new Description(TASK_DESCRIPTION), new CreatedBy(), new AdHocAutostart(true), new IsMultipleInstance(false), new MultipleInstanceExecutionMode(), new MultipleInstanceCollectionInput(), new MultipleInstanceDataInput(), new MultipleInstanceCollectionOutput(), new MultipleInstanceDataOutput(), new MultipleInstanceCompletionCondition(), new OnEntryAction(new ScriptTypeListValue().addValue(new ScriptTypeValue())), new OnExitAction(new ScriptTypeListValue().addValue(new ScriptTypeValue())), new Content(), new SLADueDate()), new BackgroundSet(), new FontSet(), new RectangleDimensionsSet(), new SimulationSet(), new TaskType(TaskTypes.USER), new AdvancedData());
embeddedSubprocess = new EmbeddedSubprocess(new BPMNGeneralSet(new Name(SUB_PROCESS_NAME), new Documentation(SUB_PROCESS_DOCUMENTATION)), new BackgroundSet(), new FontSet(), new RectangleDimensionsSet(), new SimulationSet(), new AdvancedData(), new EmbeddedSubprocessExecutionSet(new OnEntryAction(new ScriptTypeListValue().addValue(new ScriptTypeValue(LANGUAGE, SCRIPT))), new OnExitAction(new ScriptTypeListValue().addValue(new ScriptTypeValue(LANGUAGE, SCRIPT))), new IsAsync(false), new SLADueDate()), new ProcessData(SUB_PROCESS_VARIABLES));
nodes = Arrays.asList(createNode(bpmnDiagram), createNode(userTask), createNode(embeddedSubprocess));
when(diagram.getGraph()).thenReturn(graph);
when(graph.nodes()).thenReturn(nodes);
when(mustacheTemplateRenderer.render(eq(TEMPLATE), any(BPMNDocumentation.class))).thenReturn(RENDERED_DOC);
when(decorators.getDecorator(anyString())).thenReturn(Optional.empty());
// adapters mock
when(definitionManager.adapters()).thenReturn(adapters);
AdapterRegistry adapterRegistry = mock(AdapterRegistry.class);
when(adapterRegistry.getDefinitionAdapter(any())).thenReturn(definitionAdapter);
when(adapters.registry()).thenReturn(adapterRegistry);
when(adapters.forDefinition()).thenReturn(definitionAdapter);
when(adapters.forDefinitionSet()).thenReturn(definitionSetAdapter);
when(adapters.forProperty()).thenReturn(propertyAdapter);
when(definitionAdapter.getId(userTask)).thenReturn(userTaskId);
when(definitionAdapter.getId(embeddedSubprocess)).thenReturn(subprocessId);
when(definitionUtils.getName(bpmnDiagram)).thenReturn(PROCESS_NAME);
when(definitionUtils.getName(userTask)).thenReturn(TASK_NAME);
when(definitionUtils.getTitle(userTask.getClass().getName())).thenReturn(TASK_NAME);
when(definitionUtils.getName(embeddedSubprocess)).thenReturn(SUB_PROCESS_NAME);
when(definitionUtils.getTitle(embeddedSubprocess.getClass().getName())).thenReturn(SUB_PROCESS_NAME);
// mock icons
glyphProvider = (defId) -> glyphIcon;
when(categoryDefinitionProvider.glyphProvider()).thenReturn(glyphProvider);
when(glyphRenderer.render(eq(glyphIcon), anyDouble(), anyDouble())).thenReturn(iconElement);
when(iconElement.getElement()).thenReturn(iconHTMLElement);
when(iconHTMLElement.getInnerHTML()).thenReturn(ICON_HTML);
when(shapeFactory.getGlyph(anyString())).thenReturn(imageStripGlyph);
when(glyphRenderer.render(eq(imageStripGlyph), anyDouble(), anyDouble())).thenReturn(iconElement);
when(userTaskId.value()).thenReturn(UserTask.class.getName());
when(subprocessId.value()).thenReturn(EmbeddedSubprocess.class.getName());
// adapters mock for task
final TaskGeneralSet taskGeneral = userTask.getGeneral();
final UserTaskExecutionSet taskExecutionSet = userTask.getExecutionSet();
when(definitionAdapter.getCategory(eq(userTask))).thenReturn(BPMNCategories.ACTIVITIES);
when(definitionAdapter.getPropertyFields(eq(userTask))).thenReturn(new String[] { "taskGeneral.documentation", "taskGeneral.name", "taskExecutionSet.subject", "taskExecutionSet.groupId", "taskExecutionSet.priority", "taskExecutionSet.assignmentsInfo", "taskExecutionSet.description" });
when(definitionAdapter.getProperty(eq(userTask), eq("taskGeneral.documentation"))).thenReturn((Optional) Optional.of(taskGeneral.getDocumentation()));
when(definitionAdapter.getProperty(eq(userTask), eq("taskGeneral.name"))).thenReturn((Optional) Optional.of(taskGeneral.getName()));
when(definitionAdapter.getProperty(eq(userTask), eq("taskExecutionSet.subject"))).thenReturn((Optional) Optional.of(taskExecutionSet.getSubject()));
when(definitionAdapter.getProperty(eq(userTask), eq("taskExecutionSet.groupId"))).thenReturn((Optional) Optional.of(taskExecutionSet.getGroupid()));
when(definitionAdapter.getProperty(eq(userTask), eq("taskExecutionSet.priority"))).thenReturn((Optional) Optional.of(taskExecutionSet.getPriority()));
when(definitionAdapter.getProperty(eq(userTask), eq("taskExecutionSet.assignmentsInfo"))).thenReturn((Optional) Optional.of(taskExecutionSet.getAssignmentsinfo()));
when(definitionAdapter.getProperty(eq(userTask), eq("taskExecutionSet.description"))).thenReturn((Optional) Optional.of(taskExecutionSet.getDescription()));
mockProperty(taskGeneral.getDocumentation(), TASK_DOCUMENTATION, DOCUMENTATION_CAPTION);
mockProperty(taskGeneral, TASK_NAME, NAME_CAPTION);
mockProperty(taskExecutionSet.getSubject(), TASK_SUBJECT, SUBJECT_CAPTION);
mockProperty(taskExecutionSet.getGroupid(), TASK_GROUPID, GROUP_CAPTION);
mockProperty(taskExecutionSet.getPriority(), TASK_PRIORITY, PRIORITY_CAPTION);
mockProperty(taskExecutionSet.getDescription(), TASK_DESCRIPTION, DESCRIPTION_CAPTION);
mockProperty(taskExecutionSet.getAssignmentsinfo(), "", ASSIGNEMNTS_CAPTION);
when(decorators.getDecorator(taskExecutionSet.getAssignmentsinfo())).thenReturn(Optional.of(() -> ASSIGNEMNTS));
// adapters mock for subprocess
final BPMNGeneralSet subprocessGeneral = embeddedSubprocess.getGeneral();
final EmbeddedSubprocessExecutionSet subprocessExecutionSet = embeddedSubprocess.getExecutionSet();
when(definitionAdapter.getCategory(eq(embeddedSubprocess))).thenReturn(BPMNCategories.SUB_PROCESSES);
when(definitionAdapter.getPropertyFields(eq(embeddedSubprocess))).thenReturn(new String[] { "subprocessGeneral.documentation", "subprocessGeneral.name", "subprocessExecutionSet.onEntryAction", "subprocessExecutionSet.onExitAction", "subprocessExecutionSet.isAsync" });
when(definitionAdapter.getProperty(eq(embeddedSubprocess), eq("subprocessGeneral.documentation"))).thenReturn((Optional) Optional.of(subprocessGeneral.getDocumentation()));
when(definitionAdapter.getProperty(eq(embeddedSubprocess), eq("subprocessGeneral.name"))).thenReturn((Optional) Optional.of(subprocessGeneral.getName()));
when(definitionAdapter.getProperty(eq(embeddedSubprocess), eq("subprocessExecutionSet.onEntryAction"))).thenReturn((Optional) Optional.of(subprocessExecutionSet.getOnEntryAction()));
when(definitionAdapter.getProperty(eq(embeddedSubprocess), eq("subprocessExecutionSet.onExitAction"))).thenReturn((Optional) Optional.of(subprocessExecutionSet.getOnExitAction()));
when(definitionAdapter.getProperty(eq(embeddedSubprocess), eq("subprocessExecutionSet.isAsync"))).thenReturn((Optional) Optional.of(subprocessExecutionSet.getIsAsync()));
mockProperty(subprocessGeneral.getDocumentation(), SUB_PROCESS_DOCUMENTATION, DOCUMENTATION_CAPTION);
mockProperty(subprocessGeneral, SUB_PROCESS_NAME, NAME_CAPTION);
mockProperty(subprocessExecutionSet.getOnEntryAction(), ON_ENTRY_ACTION, ON_ENTRY_CAPTION);
mockProperty(subprocessExecutionSet.getOnExitAction(), ON_EXIT_ACTION, ON_EXIT_CAPTION);
mockProperty(subprocessExecutionSet.getIsAsync(), "false", ISASYNC_CAPTION);
tested = new ClientBPMNDocumentationService(mustacheTemplateRenderer, definitionManager, definitionUtils, shapeFactory, canvasFileExport, sessionManager, categoryDefinitionProvider, glyphRenderer, translationService, null, decorators);
}
Aggregations