public ScriptTaskExecutionSet() { this(new Script(new ScriptTypeValue("java", "")), new IsAsync()); }
public String serialize(final ScriptTypeValue value) { final StringBuffer serializedValue = new StringBuffer(); appendValue(serializedValue, value.getLanguage()); serializedValue.append(DELIMITER); appendValue(serializedValue, value.getScript()); return serializedValue.toString(); }
private ScriptTypeValue copy(ScriptTypeValue source, boolean createIfSourceNull) { if (source == null) { return createIfSourceNull ? new ScriptTypeValue() : null; } ScriptTypeValue copy = new ScriptTypeValue(); copy.setScript(source.getScript()); copy.setLanguage(source.getLanguage()); return copy; } }
protected void onChange() { ScriptTypeValue oldValue = value; value = copy(oldValue, true); value.setScript(view.getScript()); value.setLanguage(view.getLanguage()); notifyChange(oldValue, value); }
ScriptTypeValue completionCondition = new ScriptTypeValue(); completionCondition.setScript("autocomplete"); completionCondition.setLanguage("drools"); stage.getExecutionSet().setAdHocCompletionCondition(new AdHocCompletionCondition(completionCondition)); ScriptTypeValue entryAction = new ScriptTypeValue(); entryAction.setScript("StageTest"); entryAction.setLanguage("java"); stage.getExecutionSet().setOnEntryAction(new OnEntryAction(new ScriptTypeListValue(Collections.singletonList(entryAction)))); ScriptTypeValue exitAction = new ScriptTypeValue(); exitAction.setScript("StageTest"); exitAction.setLanguage("java"); stage.getExecutionSet().setOnExitAction(new OnExitAction(new ScriptTypeListValue(Collections.singletonList(exitAction))));
public ScriptTypeListValue getOnEntryActions(final List<ExtensionAttributeValue> extensionValues) { final ScriptTypeListValue onEntryActions = new ScriptTypeListValue(); ScriptTypeValue onEntryAction; if (extensionValues != null && !extensionValues.isEmpty()) { for (ExtensionAttributeValue extattrval : extensionValues) { FeatureMap extensionElements = extattrval.getValue(); @SuppressWarnings("unchecked") List<OnEntryScriptType> onEntryExtensions = (List<OnEntryScriptType>) extensionElements .get(DroolsPackage.Literals.DOCUMENT_ROOT__ON_ENTRY_SCRIPT, true); for (OnEntryScriptType onEntryScript : onEntryExtensions) { onEntryAction = getOnEntryAction(onEntryScript); if (onEntryAction.getScript() != null && !onEntryAction.getScript().isEmpty()) { onEntryActions.addValue(onEntryAction); } } } } return onEntryActions; }
private boolean isInDefaultLanguage(ScriptTypeValue value) { return value != null && DEFAULT_LANGUAGE.equals(value.getLanguage()); }
subprocessExecutionSet.setWaitForCompletion(new WaitForCompletion(true)); ScriptTypeValue entryAction = new ScriptTypeValue(); entryAction.setScript(("SubprocessTest")); entryAction.setLanguage("java"); subprocessExecutionSet.setOnEntryAction(new OnEntryAction(new ScriptTypeListValue(Collections.singletonList(entryAction)))); ScriptTypeValue exitAction = new ScriptTypeValue(); exitAction.setScript("SubprocessTest"); exitAction.setLanguage("java"); subprocessExecutionSet.setOnExitAction(new OnExitAction(new ScriptTypeListValue(Collections.singletonList(exitAction))));
public ScriptTypeListValue getOnExitActions(final List<ExtensionAttributeValue> extensionValues) { final ScriptTypeListValue onExitActions = new ScriptTypeListValue(); ScriptTypeValue onExitAction; if (extensionValues != null && !extensionValues.isEmpty()) { for (ExtensionAttributeValue extattrval : extensionValues) { FeatureMap extensionElements = extattrval.getValue(); @SuppressWarnings("unchecked") List<OnExitScriptType> onExitExtensions = (List<OnExitScriptType>) extensionElements .get(DroolsPackage.Literals.DOCUMENT_ROOT__ON_EXIT_SCRIPT, true); for (OnExitScriptType onExitScript : onExitExtensions) { onExitAction = getOnExitAction(onExitScript); if (onExitAction.getScript() != null && !onExitAction.getScript().isEmpty()) { onExitActions.addValue(onExitAction); } } } } return onExitActions; }
private void assertConditionLanguage(Diagram<Graph, Metadata> diagram, String id, String value) { List<Node> nodes = getNodes(diagram); Optional<SequenceFlow> sequenceFlow = Stream.concat(nodes.stream().flatMap(node -> { List<Edge> d = node.getInEdges(); return d.stream(); }), nodes.stream().flatMap(node -> { List<Edge> d = node.getOutEdges(); return d.stream(); })) .filter(edge -> edge.getUUID().equals(id)) .map(node -> (View) node.getContent()) .filter(view -> view.getDefinition() instanceof SequenceFlow) .map(view -> ((SequenceFlow) view.getDefinition())) .findFirst(); String conditionLanguage = (sequenceFlow.isPresent() ? sequenceFlow.get().getExecutionSet().getConditionExpression().getValue().getLanguage() : null); assertEquals(value, conditionLanguage); }
@Override public void setValue(ScriptTypeValue value) { super.setValue(value); if (value != null) { view.setLanguage(value.getLanguage()); view.setScript(value.getScript()); } }
public ScriptTypeValue parse(final String value) { final List<String> tokens = parseScriptTokens(value); final String language = tokens.get(0); final String script = tokens.get(1); return new ScriptTypeValue(!language.isEmpty() ? language : null, !script.isEmpty() ? script : null); }
subcaseExecutionSet.setWaitForCompletion(new WaitForCompletion(true)); ScriptTypeValue entryAction = new ScriptTypeValue(); entryAction.setScript(("SubcaseTest")); entryAction.setLanguage("java"); subcaseExecutionSet.setOnEntryAction(new OnEntryAction(new ScriptTypeListValue(Collections.singletonList(entryAction)))); ScriptTypeValue exitAction = new ScriptTypeValue(); exitAction.setScript("SubcaseTest"); exitAction.setLanguage("java"); subcaseExecutionSet.setOnExitAction(new OnExitAction(new ScriptTypeListValue(Collections.singletonList(exitAction))));
void onSimpleConditionSelected() { clearError(); if (value != null && !isEmpty(value.getScript())) { editorService.call(result -> onSimpleConditionSelected((ParseConditionResult) result), (message, throwable) -> onSimpleConditionSelectedError(throwable)).parseCondition(value.getScript()); } else { simpleConditionEditor.setValue(null); showSimpleConditionEditor(); } }
private void assertConditionLanguage(Diagram<Graph, Metadata> diagram, String id, String value) { List<Node> nodes = getNodes(diagram); Optional<SequenceFlow> sequenceFlow = Stream.concat(nodes.stream().flatMap(node -> { List<Edge> d = node.getInEdges(); return d.stream(); }), nodes.stream().flatMap(node -> { List<Edge> d = node.getOutEdges(); return d.stream(); })) .filter(edge -> edge.getUUID().equals(id)) .map(node -> (View) node.getContent()) .filter(view -> view.getDefinition() instanceof SequenceFlow) .map(view -> ((SequenceFlow) view.getDefinition())) .findFirst(); String conditionLanguage = (sequenceFlow.isPresent() ? sequenceFlow.get().getExecutionSet().getConditionExpression().getValue().getLanguage() : null); assertEquals(value, conditionLanguage); }
protected void applyScriptTaskProperties(ScriptTask scriptTask, Map<String, String> properties) { String scriptTypeStr = properties.get("script"); if (scriptTypeStr != null && !scriptTypeStr.isEmpty()) { ScriptTypeValue value = new ScriptTypeTypeSerializer().parse(scriptTypeStr); if (value.getScript() != null && !value.getScript().isEmpty()) { scriptTask.setScript(wrapInCDATABlock(value.getScript())); } String languageFormat = Utils.getScriptLanguageFormat(value.getLanguage()); if (languageFormat == null) { //default to java languageFormat = "http://www.java.com/java"; } scriptTask.setScriptFormat(languageFormat); } }
public SequenceFlowExecutionSet() { this(new Priority(""), new ConditionExpression(new ScriptTypeValue("java", "")) ); }
"|TaskTest:Boolean|[din]TaskTest=true")); ScriptTypeValue entryAction = new ScriptTypeValue(); entryAction.setScript(("TaskTest")); entryAction.setLanguage("java"); executionSet.setOnEntryAction(new OnEntryAction(new ScriptTypeListValue(Collections.singletonList(entryAction)))); ScriptTypeValue exitAction = new ScriptTypeValue(); exitAction.setScript("TaskTest"); exitAction.setLanguage("java"); executionSet.setOnExitAction(new OnExitAction(new ScriptTypeListValue(Collections.singletonList(exitAction))));
@Override public void setValue(ScriptTypeValue value) { super.setValue(value); scriptEditor.setValue(value); simpleConditionEditor.clear(); clearError(); if (value != null) { if (isInDefaultLanguage(value)) { if (!isEmpty(value.getScript())) { editorService.call(result -> onSetValue((ParseConditionResult) result), (message, throwable) -> onSetValueError(throwable)).parseCondition(value.getScript()); } else { showSimpleConditionEditor(); } } else { showScriptEditor(); } } else { simpleConditionEditor.setValue(null); showSimpleConditionEditor(); } }
protected void applyConditionalEventProperties(ConditionalEventDefinition event, Map<String, String> properties) { FormalExpression conditionExpression = Bpmn2Factory.eINSTANCE.createFormalExpression(); ScriptTypeValue value = new ScriptTypeTypeSerializer().parse(properties.get("conditionexpression")); if (value.getLanguage() != null && !value.getLanguage().isEmpty()) { String languageFormat = Utils.getScriptLanguageFormat(value.getLanguage()); if (languageFormat == null) { //default to drools languageFormat = "http://www.jboss.org/drools/rule"; } conditionExpression.setLanguage(languageFormat); } if (value.getScript() != null && !value.getScript().isEmpty()) { String scriptStr = value.getScript().replaceAll("\\\\n", "\n"); conditionExpression.setBody(wrapInCDATABlock(scriptStr)); } event.setCondition(conditionExpression); }