You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@metron.apache.org by ot...@apache.org on 2017/08/17 05:40:37 UTC
metron git commit: METRON-711 StellarShell assigns variables even if
an exception was thrown in the statement. (ottobackwards) closes
apache/metron#686
Repository: metron
Updated Branches:
refs/heads/master 5a6370a63 -> 73dc16e7a
METRON-711 StellarShell assigns variables even if an exception was thrown in the statement. (ottobackwards) closes apache/metron#686
Project: http://git-wip-us.apache.org/repos/asf/metron/repo
Commit: http://git-wip-us.apache.org/repos/asf/metron/commit/73dc16e7
Tree: http://git-wip-us.apache.org/repos/asf/metron/tree/73dc16e7
Diff: http://git-wip-us.apache.org/repos/asf/metron/diff/73dc16e7
Branch: refs/heads/master
Commit: 73dc16e7a40edb38de6657074c22860647441148
Parents: 5a6370a
Author: ottobackwards <ot...@gmail.com>
Authored: Thu Aug 17 01:17:44 2017 -0400
Committer: otto <ot...@apache.org>
Committed: Thu Aug 17 01:17:44 2017 -0400
----------------------------------------------------------------------
.../stellar/common/shell/StellarShell.java | 40 ++++++++------------
1 file changed, 15 insertions(+), 25 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/metron/blob/73dc16e7/metron-stellar/stellar-common/src/main/java/org/apache/metron/stellar/common/shell/StellarShell.java
----------------------------------------------------------------------
diff --git a/metron-stellar/stellar-common/src/main/java/org/apache/metron/stellar/common/shell/StellarShell.java b/metron-stellar/stellar-common/src/main/java/org/apache/metron/stellar/common/shell/StellarShell.java
index b8b31a3..0d2f0c3 100644
--- a/metron-stellar/stellar-common/src/main/java/org/apache/metron/stellar/common/shell/StellarShell.java
+++ b/metron-stellar/stellar-common/src/main/java/org/apache/metron/stellar/common/shell/StellarShell.java
@@ -264,12 +264,21 @@ public class StellarShell extends AeshConsoleCallback implements Completion {
stellarExpression = stellarExpression.trim();
}
}
- Object result = executeStellar(stellarExpression);
- if(result != null && variable == null) {
- writeLine(result.toString());
- }
- if(variable != null) {
- executor.assign(variable, stellarExpression, result);
+
+ try {
+ Object result = executor.execute(stellarExpression);
+ if (result != null && variable == null) {
+ writeLine(result.toString());
+ }
+ if (variable != null) {
+ executor.assign(variable, stellarExpression, result);
+ }
+ } catch (Throwable t) {
+ if(variable != null) {
+ writeLine(String.format("%s ERROR: Variable %s not assigned", ERROR_PROMPT, variable));
+ }
+ writeLine(ERROR_PROMPT + t.getMessage());
+ t.printStackTrace();
}
}
@@ -352,25 +361,6 @@ public class StellarShell extends AeshConsoleCallback implements Completion {
return StringUtils.startsWith(expression, DOC_PREFIX);
}
- /**
- * Executes a Stellar expression.
- * @param expression The expression to execute.
- * @return The result of the expression.
- */
- private Object executeStellar(String expression) {
- Object result = null;
-
- try {
- result = executor.execute(expression);
-
- } catch(Throwable t) {
- writeLine(ERROR_PROMPT + t.getMessage());
- t.printStackTrace();
- }
-
- return result;
- }
-
private void write(String out) {
System.out.print(out);
}