You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@manifoldcf.apache.org by kw...@apache.org on 2011/08/28 16:11:50 UTC
svn commit: r1162528 -
/incubator/lcf/trunk/framework/script-engine/src/main/java/org/apache/manifoldcf/scriptengine/ScriptParser.java
Author: kwright
Date: Sun Aug 28 14:11:50 2011
New Revision: 1162528
URL: http://svn.apache.org/viewvc?rev=1162528&view=rev
Log:
Interactive mode now restarts after ScriptException
Modified:
incubator/lcf/trunk/framework/script-engine/src/main/java/org/apache/manifoldcf/scriptengine/ScriptParser.java
Modified: incubator/lcf/trunk/framework/script-engine/src/main/java/org/apache/manifoldcf/scriptengine/ScriptParser.java
URL: http://svn.apache.org/viewvc/incubator/lcf/trunk/framework/script-engine/src/main/java/org/apache/manifoldcf/scriptengine/ScriptParser.java?rev=1162528&r1=1162527&r2=1162528&view=diff
==============================================================================
--- incubator/lcf/trunk/framework/script-engine/src/main/java/org/apache/manifoldcf/scriptengine/ScriptParser.java (original)
+++ incubator/lcf/trunk/framework/script-engine/src/main/java/org/apache/manifoldcf/scriptengine/ScriptParser.java Sun Aug 28 14:11:50 2011
@@ -1164,15 +1164,33 @@ public class ScriptParser
i++;
}
sp.addVariable("__args__",va);
+ TokenStream ts = new BasicTokenStream(reader);
+ sp.parseStatements(ts);
+ Token t = ts.peek();
+ if (t != null)
+ t.throwException("Characters after end of script");
}
else
+ {
reader = new InputStreamReader(System.in);
- TokenStream ts = new BasicTokenStream(reader);
- sp.parseStatements(ts);
- Token t = ts.peek();
- if (t != null)
- t.throwException("Characters after end of script");
+ while (true)
+ {
+ try
+ {
+ TokenStream ts = new BasicTokenStream(reader);
+ sp.parseStatements(ts);
+ Token t = ts.peek();
+ if (t != null)
+ t.throwException("Characters after end of script");
+ break;
+ }
+ catch (ScriptException e)
+ {
+ System.out.println("Error: "+e.getMessage());
+ }
+ }
+ }
}
catch (Exception e)
{