You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by we...@apache.org on 2009/09/11 12:56:10 UTC

svn commit: r813775 - in /myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations: ApplicationProxy.java RenderkitProxy.java

Author: werpu
Date: Fri Sep 11 10:56:09 2009
New Revision: 813775

URL: http://svn.apache.org/viewvc?rev=813775&view=rev
Log:
http://issues.apache.org/jira/browse/EXTSCRIPT-1

portlet enabling code thanks to the jsf2 indirection


Modified:
    myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java
    myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java

Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java?rev=813775&r1=813774&r2=813775&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java Fri Sep 11 10:56:09 2009
@@ -491,6 +491,10 @@
         weaveDelegate();
         ResourceHandler retVal = _delegate.getResourceHandler();
         if (ProxyUtils.isDynamic(retVal.getClass())) {
+            //we use a proxy here to limit the reloads to some central
+            //points which have a lower calling frequency which is high enough
+            //to get it reloaded upon every request, but which should not drag
+            //down the entire system speedwise
             retVal = (ResourceHandler) new ResourceHandlerProxy(retVal);
             setResourceHandler(retVal);
         }

Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java?rev=813775&r1=813774&r2=813775&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java Fri Sep 11 10:56:09 2009
@@ -32,6 +32,7 @@
 import java.io.Writer;
 import java.io.OutputStream;
 import java.util.Iterator;
+import java.util.Map;
 import javax.servlet.ServletRequest;
 
 /**
@@ -44,16 +45,15 @@
 public class RenderkitProxy extends RenderKit implements Decorated {
 
 
-
     private void weaveDelegate() {
         _delegate = (RenderKit) ProxyUtils.getWeaver().reloadScriptingInstance(_delegate);
     }
 
     private boolean alreadyWovenInRequest(String clazz) {
-        //todo also enable portlets here
-       ServletRequest req = (ServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
-        if(req.getAttribute(ScriptingConst.SCRIPTING_REQUSINGLETON+clazz) == null) {
-            req.setAttribute(ScriptingConst.SCRIPTING_REQUSINGLETON+clazz,"");
+        //portlets now can be enabled thanks to the jsf2 indirections regarding the external context
+        Map<String, Object> req = FacesContext.getCurrentInstance().getExternalContext().getRequestMap();
+        if (req.get(ScriptingConst.SCRIPTING_REQUSINGLETON + clazz) == null) {
+            req.put(ScriptingConst.SCRIPTING_REQUSINGLETON + clazz, "");
             return false;
         }
         return true;
@@ -68,7 +68,7 @@
 
     public void addRenderer(String s, String s1, Renderer renderer) {
         weaveDelegate();
-        if(ProxyUtils.isDynamic(renderer.getClass()) && !alreadyWovenInRequest(renderer.toString())) {
+        if (ProxyUtils.isDynamic(renderer.getClass()) && !alreadyWovenInRequest(renderer.toString())) {
             renderer = (Renderer) ProxyUtils.getWeaver().reloadScriptingInstance(renderer);
             alreadyWovenInRequest(renderer.toString());
         }
@@ -80,10 +80,10 @@
         weaveDelegate();
         Renderer retVal = _delegate.getRenderer(s, s1);
 
-        if (retVal != null && ProxyUtils.isDynamic(retVal.getClass())&& !alreadyWovenInRequest(retVal.toString())) {
+        if (retVal != null && ProxyUtils.isDynamic(retVal.getClass()) && !alreadyWovenInRequest(retVal.toString())) {
             retVal = (Renderer) ProxyUtils.getWeaver().reloadScriptingInstance(retVal);
             alreadyWovenInRequest(retVal.toString());
-            _delegate.addRenderer(s,s1,retVal);
+            _delegate.addRenderer(s, s1, retVal);
         }
         return retVal;
     }