aboutsummaryrefslogtreecommitdiffstats
path: root/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/XQueryScriptTask.java
diff options
context:
space:
mode:
Diffstat (limited to 'bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/XQueryScriptTask.java')
-rw-r--r--bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/XQueryScriptTask.java31
1 files changed, 6 insertions, 25 deletions
diff --git a/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/XQueryScriptTask.java b/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/XQueryScriptTask.java
index 31da737..e42806e 100644
--- a/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/XQueryScriptTask.java
+++ b/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/XQueryScriptTask.java
@@ -25,7 +25,6 @@ import java.io.IOException;
import java.io.InputStream;
import java.math.BigDecimal;
import java.net.URI;
-import java.util.Iterator;
import javax.xml.transform.stream.StreamSource;
@@ -33,7 +32,6 @@ import org.camunda.bpm.engine.ProcessEngineException;
import org.camunda.bpm.engine.delegate.DelegateExecution;
//import java.util.logging.Logger;
import org.camunda.bpm.engine.delegate.Expression;
-
import org.openecomp.mso.logger.MessageEnum;
import org.openecomp.mso.logger.MsoLogger;
@@ -97,11 +95,9 @@ public class XQueryScriptTask extends BaseTask {
String[] atomicInputVariableArray = (theAtomicInputVariables == null)
? new String[0] : theAtomicInputVariables.split(",[ ]*");
- Boolean shouldFail = (Boolean) execution.getVariable("shouldFail");
-
- if (shouldFail != null && shouldFail) {
- throw new ProcessEngineException(getClass().getSimpleName() + " Failed");
- }
+ if (shouldFail(execution)) {
+ throw new ProcessEngineException(getTaskName() + " Failed");
+ }
// The script could be compiled once and reused, but we are reading it
// and compiling it every time.
@@ -190,9 +186,7 @@ public class XQueryScriptTask extends BaseTask {
// Evaluate the query and collect the output.
StringBuilder output = new StringBuilder();
- Iterator<XdmItem> xdmItems = evaluator.iterator();
- while (xdmItems.hasNext()) {
- XdmItem item = xdmItems.next();
+ for(XdmItem item : evaluator) {
if (msoLogger.isDebugEnabled()) {
msoLogger.debug("XQuery result item = " + item);
@@ -218,26 +212,13 @@ public class XQueryScriptTask extends BaseTask {
*/
private XQueryExecutable compile(XQueryCompiler compiler, String resource)
throws Exception {
- InputStream xqStream = null;
- try {
- xqStream = getClass().getResourceAsStream(resource);
+ try(InputStream xqStream = getClass().getResourceAsStream(resource)) {
if (xqStream == null) {
throw new IOException("Resource not found: " + resource);
}
- XQueryExecutable executable = compiler.compile(xqStream);
- xqStream.close();
- xqStream = null;
- return executable;
- } finally {
- if (xqStream != null) {
- try {
- xqStream.close();
- } catch (Exception e) {
- // Do nothing
- }
- }
+ return compiler.compile(xqStream);
}
}
} \ No newline at end of file