You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2008/03/11 14:00:10 UTC
svn commit: r635909 - in /incubator/sling/trunk:
api/src/main/java/org/apache/sling/api/scripting/SlingScript.java
scripting/resolver/src/main/java/org/apache/sling/scripting/resolver/impl/DefaultSlingScript.java
Author: cziegeler
Date: Tue Mar 11 06:00:08 2008
New Revision: 635909
URL: http://svn.apache.org/viewvc?rev=635909&view=rev
Log:
SLING-320: Return value from script.
Modified:
incubator/sling/trunk/api/src/main/java/org/apache/sling/api/scripting/SlingScript.java
incubator/sling/trunk/scripting/resolver/src/main/java/org/apache/sling/scripting/resolver/impl/DefaultSlingScript.java
Modified: incubator/sling/trunk/api/src/main/java/org/apache/sling/api/scripting/SlingScript.java
URL: http://svn.apache.org/viewvc/incubator/sling/trunk/api/src/main/java/org/apache/sling/api/scripting/SlingScript.java?rev=635909&r1=635908&r2=635909&view=diff
==============================================================================
--- incubator/sling/trunk/api/src/main/java/org/apache/sling/api/scripting/SlingScript.java (original)
+++ incubator/sling/trunk/api/src/main/java/org/apache/sling/api/scripting/SlingScript.java Tue Mar 11 06:00:08 2008
@@ -46,10 +46,11 @@
* evaluating the script. Any bound variables must conform to the
* requirements of the {@link SlingBindings} predefined variables
* set.
+ * @return The value returned by the script.
* @throws ScriptEvaluationException If an error occurrs executing the
* script or preparing the script execution. The cause of the
* evaluation execption is available as the exception cause.
*/
- void eval(SlingBindings props);
+ Object eval(SlingBindings props);
}
Modified: incubator/sling/trunk/scripting/resolver/src/main/java/org/apache/sling/scripting/resolver/impl/DefaultSlingScript.java
URL: http://svn.apache.org/viewvc/incubator/sling/trunk/scripting/resolver/src/main/java/org/apache/sling/scripting/resolver/impl/DefaultSlingScript.java?rev=635909&r1=635908&r2=635909&view=diff
==============================================================================
--- incubator/sling/trunk/scripting/resolver/src/main/java/org/apache/sling/scripting/resolver/impl/DefaultSlingScript.java (original)
+++ incubator/sling/trunk/scripting/resolver/src/main/java/org/apache/sling/scripting/resolver/impl/DefaultSlingScript.java Tue Mar 11 06:00:08 2008
@@ -96,9 +96,10 @@
}
/**
+ * @see org.apache.sling.api.scripting.SlingScript#eval(org.apache.sling.api.scripting.SlingBindings)
* @throws ScriptEvaluationException
*/
- public void eval(SlingBindings props) {
+ public Object eval(SlingBindings props) {
String scriptName = getScriptResource().getPath();
@@ -115,7 +116,7 @@
Reader reader = getScriptReader();
// evaluate the script
- scriptEngine.eval(reader, ctx);
+ final Object result = scriptEngine.eval(reader, ctx);
// optionall flush the output channel
Object flushObject = bindings.get(SlingBindings.FLUSH);
@@ -126,6 +127,7 @@
// allways flush the error channel
ctx.getErrorWriter().flush();
+ return result;
} catch (IOException ioe) {
throw new ScriptEvaluationException(scriptName, ioe.getMessage(),
ioe);