@Override public Set<PortableWorkDefinition> loadWorkItemDefinitions(final Path path) { final Map<String, WorkDefinition> workDefinitions = new HashMap<String, WorkDefinition>(); try { //Load WorkItemDefinitions from VFS final Path projectRoot = moduleService.resolveModule(path).getRootPath(); workDefinitions.putAll(resourceWorkDefinitionsLoader.loadWorkDefinitions(projectRoot)); //Load WorkItemDefinitions from ConfigurationService workDefinitions.putAll(configWorkDefinitionsLoader.loadWorkDefinitions()); //Copy the Work Items into Structures suitable for GWT final Set<PortableWorkDefinition> workItems = new HashSet<PortableWorkDefinition>(); for (Map.Entry<String, WorkDefinition> entry : workDefinitions.entrySet()) { final PortableWorkDefinition wid = new PortableWorkDefinition(); final WorkDefinitionImpl wd = (WorkDefinitionImpl) entry.getValue(); wid.setName(wd.getName()); wid.setDisplayName(wd.getDisplayName()); wid.setParameters(convertWorkItemParameters(entry.getValue().getParameters())); wid.setResults(convertWorkItemParameters(entry.getValue().getResults())); workItems.add(wid); } return workItems; } catch (Exception e) { throw ExceptionUtilities.handleException(e); } }
public void setParameters( Collection<PortableParameterDefinition> parameters ) { this.parameters.clear(); Iterator<PortableParameterDefinition> iterator = parameters.iterator(); while ( iterator.hasNext() ) { addParameter( iterator.next() ); } }
PortableWorkDefinition findWorkItemDefinition(final String workItem) { final List<PortableWorkDefinition> workItemDefinitions = new ArrayList<>(presenter.getWorkItemDefinitions()); return workItemDefinitions .stream() .filter(a -> a.getName().equals(workItem)) .findFirst() .orElseThrow(IllegalStateException::new); }
@Override public void forEachWorkItem(final BiConsumer<String, String> biConsumer) { getPresenter() .getWorkItemDefinitions() .stream() .filter(this::isWorkItemAvailable) .forEach(workDefinition -> biConsumer.accept(workDefinition.getDisplayName(), workDefinition.getName())); }
public ActionWorkItemColumnDetails( final ActionWorkItemCol52 column ) { super( column ); this.name = column.getWorkItemDefinition().getName(); this.parameters = new HashMap<String, PortableParameterDefinition>(); for ( String parameterName : column.getWorkItemDefinition().getParameterNames() ) { this.parameters.put( parameterName, column.getWorkItemDefinition().getParameter( parameterName ) ); } }
public void visitActionExecuteWorkItem(final ActionExecuteWorkItem action) { String wiName = action.getWorkDefinition().getName(); String wiImplName = WORKITEM_PREFIX + wiName; instantiatedWorkItems.add(wiName); buf.append(indentation); buf.append("org.drools.core.process.instance.impl.WorkItemImpl "); buf.append(wiImplName); buf.append(" = new org.drools.core.process.instance.impl.WorkItemImpl();\n"); buf.append(indentation); buf.append(wiImplName); buf.append(".setName( \""); buf.append(wiName); buf.append("\" );\n"); for (PortableParameterDefinition ppd : action.getWorkDefinition().getParameters()) { makeWorkItemParameterDRL(ppd, wiImplName); } buf.append(indentation); buf.append("wim.internalExecuteWorkItem( "); buf.append(wiImplName); buf.append(" );\n"); }
} else if (line.startsWith("org.drools.core.process.instance.impl.WorkItemImpl wiWorkItem")) { ActionExecuteWorkItem awi = new ActionExecuteWorkItem(); pwd = new PortableWorkDefinition(); pwd.setName("WorkItem"); awi.setWorkDefinition(pwd); m.addRhsItem(awi); commaPos).trim(); String value = statement.substring(commaPos + 1).trim(); pwd.addParameter(buildPortableParameterDefinition(name, value, boundParams));
PortableWorkDefinition pwd = new PortableWorkDefinition(); pwd.setName("WorkItem"); awi.setWorkItemDefinition(pwd); pwd.addResult(p1); pwd.addResult(p2); mpwd.getResults().size()); PortableBooleanParameterDefinition mp1 = (PortableBooleanParameterDefinition) mpwd.getResult("BooleanResult"); assertNotNull(mp1); PortableFloatParameterDefinition mp2 = (PortableFloatParameterDefinition) mpwd.getResult("FloatResult"); assertNotNull(mp2);
PortableWorkDefinition pwd = new PortableWorkDefinition(); pwd.setName("work-item"); awi.setWorkItemDefinition(pwd); p1.setName("BooleanParameter"); p1.setValue(Boolean.TRUE); pwd.addParameter(p1); pwd.addParameter(p2); pwd.addParameter(p3); pwd.addParameter(p4); mpwd.getParameters().size()); PortableBooleanParameterDefinition mp1 = (PortableBooleanParameterDefinition) mpwd.getParameter("BooleanParameter"); assertNotNull(mp1); assertEquals(Boolean.TRUE, mp1.getValue()); PortableFloatParameterDefinition mp2 = (PortableFloatParameterDefinition) mpwd.getParameter("FloatParameter"); assertNotNull(mp2); assertEquals(new Float(123.456f), mp2.getValue()); PortableIntegerParameterDefinition mp3 = (PortableIntegerParameterDefinition) mpwd.getParameter("IntegerParameter"); assertNotNull(mp3); assertEquals(new Integer(123),
@Test public void testWorkItemDefinition_SimpleAndNull() { PortableWorkDefinition def1 = new PortableWorkDefinition(); def1.setName("def1name"); column1.setWorkItemDefinition(def1); column2.setWorkItemDefinition(null); checkSingleDiff(FIELD_WORKITEM_DEFINITION_NAME, "def1name", null, column1, column2); }
thisDefinition.getName(), null ) ); for ( PortableParameterDefinition parameter : thisDefinition.getParameters() ) { result.add( new BaseColumnFieldDiffImpl( FIELD_WORKITEM_DEFINITION_PARAMETER_NAME, parameter.getName(), result.add( new BaseColumnFieldDiffImpl( FIELD_WORKITEM_DEFINITION_NAME, null, otherDefinition.getName() ) ); for ( PortableParameterDefinition parameter : otherDefinition.getParameters() ) { result.add( new BaseColumnFieldDiffImpl( FIELD_WORKITEM_DEFINITION_PARAMETER_NAME, null, if ( !thisDefinition.getName().equals( otherDefinition.getName() ) ) { result.add( new BaseColumnFieldDiffImpl( FIELD_WORKITEM_DEFINITION_NAME, thisDefinition.getName(), otherDefinition.getName() ) ); final List<String> thisDefinitionParameterNames = Arrays.asList( thisDefinition.getParameterNames() ); final List<String> otherDefinitionParameterNames = Arrays.asList( otherDefinition.getParameterNames() ); for ( String parameterName : parameterNamesDeleted ) { result.add( new BaseColumnFieldDiffImpl( FIELD_WORKITEM_DEFINITION_PARAMETER_NAME, thisDefinition.getParameter( parameterName ).getName(), null ) ); result.add( new BaseColumnFieldDiffImpl( FIELD_WORKITEM_DEFINITION_PARAMETER_VALUE, thisDefinition.getParameter( parameterName ).asString(), null ) );
void setupWorkItems() { actionWorkItems() .forEach(actionCol52 -> { final PortableWorkDefinition workItemDefinition = ((ActionWorkItemCol52) actionCol52).getWorkItemDefinition(); workItemDefinition .getResults() .stream() .filter(this::acceptParameterType) .forEach(parameterDefinition -> { final String key = trim((workItemDefinition.getName() + ":" + parameterDefinition.getName())); workItems.put(key, new WorkItemParameter(workItemDefinition, parameterDefinition)); }); }); }
private WorkItemParametersWidget parametersWidget() { final WorkItemParametersWidget parametersWidget = new WorkItemParametersWidget(presenter, false); parametersWidget.setParameters(workItemDefinition().getParameters()); return parametersWidget; }
@Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ActionExecuteWorkItem that = (ActionExecuteWorkItem) o; if (workDefinition != null ? !workDefinition.equals(that.workDefinition) : that.workDefinition != null) return false; return true; }
@Override public void forEachWorkItem(BiConsumer<String, String> biConsumer) { setupWorkItems(); workItems.forEach((key, workItemParameter) -> { final PortableWorkDefinition workItemDefinition = workItemParameter.getWorkDefinition(); final PortableParameterDefinition parameterDefinition = workItemParameter.getWorkParameterDefinition(); final String name = workItemDefinition.getDisplayName() + " - " + parameterDefinition.getName(); biConsumer.accept(name, key); }); }
public void setResults( Set<PortableParameterDefinition> results ) { this.results.clear(); Iterator<PortableParameterDefinition> it = results.iterator(); while ( it.hasNext() ) { addResult( it.next() ); } }
@Test public void getSafeHtml_ActionWorkItemExecute_Simple() { ActionWorkItemCol52 originalColumn = new ActionWorkItemCol52(); originalColumn.setHeader("action1"); originalColumn.setHideColumn(false); ActionWorkItemCol52 newColumn = new ActionWorkItemCol52(); newColumn.setHeader("action2"); newColumn.setHideColumn(true); PortableStringParameterDefinition param1 = new PortableStringParameterDefinition(); param1.setName("param1"); param1.setValue("value1"); PortableWorkDefinition def1 = new PortableWorkDefinition(); def1.setName("def1name"); def1.addParameter(param1); PortableStringParameterDefinition param3 = new PortableStringParameterDefinition(); param3.setName("param3"); param3.setValue("value3"); PortableWorkDefinition def2 = new PortableWorkDefinition(); def2.setName("def2name"); def2.addParameter(param3); originalColumn.setWorkItemDefinition(def1); newColumn.setWorkItemDefinition(def2); List<BaseColumnFieldDiff> diffs = originalColumn.diff(newColumn); SafeHtml result = helper.getSafeHtml(new UpdateColumnAuditLogEntry("mock user", originalColumn, newColumn, diffs)); assertEquals(getActionHeaderRepre(newColumn.getHeader()) + getDiffRepre(diffs), result.asString()); }
PortableWorkDefinition pwd = new PortableWorkDefinition(); pwd.setName("WorkItem"); awi.setWorkItemDefinition(pwd); pwd.addResult(p1); pwd.addResult(p2); mpwd.getResults().size()); PortableBooleanParameterDefinition mp1 = (PortableBooleanParameterDefinition) mpwd.getResult("BooleanResult"); assertNotNull(mp1); PortableFloatParameterDefinition mp2 = (PortableFloatParameterDefinition) mpwd.getResult("FloatResult"); assertNotNull(mp2);
PortableWorkDefinition pwd = new PortableWorkDefinition(); pwd.setName("work-item"); awi.setWorkItemDefinition(pwd); p1.setValue(Boolean.TRUE); p1.setBinding("$b"); pwd.addParameter(p1); p2.setValue(123.456f); p2.setBinding("$f"); pwd.addParameter(p2); p3.setValue(123); p3.setBinding("$i"); pwd.addParameter(p3); p4.setValue("hello"); p4.setBinding("$s"); pwd.addParameter(p4); mpwd.getParameters().size()); PortableBooleanParameterDefinition mp1 = (PortableBooleanParameterDefinition) mpwd.getParameter("BooleanParameter"); assertNotNull(mp1); assertEquals(Boolean.TRUE, PortableFloatParameterDefinition mp2 = (PortableFloatParameterDefinition) mpwd.getParameter("FloatParameter"); assertNotNull(mp2); assertEquals(new Float(123.456f),
@Override protected BaseColumn getColumn() { final ActionWorkItemCol52 column = new ActionWorkItemCol52(); final PortableWorkDefinition pwd = new PortableWorkDefinition(); pwd.setName(WID_NAME); column.setWorkItemDefinition(pwd); column.setHeader(HEADER); column.setWidth(WIDTH); return column; }