You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by fm...@apache.org on 2008/02/18 10:08:39 UTC
svn commit: r628655 -
/incubator/sling/trunk/scripting/resolver/src/main/java/org/apache/sling/scripting/resolver/impl/DefaultSlingScript.java
Author: fmeschbe
Date: Mon Feb 18 01:08:33 2008
New Revision: 628655
URL: http://svn.apache.org/viewvc?rev=628655&view=rev
Log:
SLING-252 provide currentNode as a "global" variable to scripts
Modified:
incubator/sling/trunk/scripting/resolver/src/main/java/org/apache/sling/scripting/resolver/impl/DefaultSlingScript.java
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=628655&r1=628654&r2=628655&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 Mon Feb 18 01:08:33 2008
@@ -37,6 +37,7 @@
import java.util.Hashtable;
import java.util.Map;
+import javax.jcr.Node;
import javax.script.Bindings;
import javax.script.ScriptContext;
import javax.script.ScriptEngine;
@@ -64,6 +65,10 @@
class DefaultSlingScript implements SlingScript, Servlet, ServletConfig {
+ // name of the global variable containing the node to which the
+ // resource adapts (null if the resource does not adapt to a node
+ private static final String NODE = "currentNode";
+
private Resource scriptResource;
private ScriptEngine scriptEngine;
@@ -301,6 +306,7 @@
bindings.put(RESOURCE, sling.getRequest().getResource());
bindings.put(OUT, sling.getResponse().getWriter());
bindings.put(LOG, logObject);
+ bindings.put(NODE, sling.getRequest().getResource().adaptTo(Node.class));
// copy non-base variables
for (Map.Entry<String, Object> entry : slingBindings.entrySet()) {