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 2010/03/26 15:48:58 UTC
svn commit: r927882 - in /myfaces/extensions/scripting/trunk:
extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/core/util/
extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/refresh/
extscript-core...
Author: werpu
Date: Fri Mar 26 14:48:57 2010
New Revision: 927882
URL: http://svn.apache.org/viewvc?rev=927882&view=rev
Log:
http://issues.apache.org/jira/browse/EXTSCRIPT-101
Cleanup of the entire startup and improving the enabled check to something more sane
(but the issue is not done yet)
Added:
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java (contents, props changed)
- copied, changed from r927428, myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java
Removed:
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java
Modified:
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/core/util/WeavingContext.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/refresh/FileChangedDaemon.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/CustomChainLoader.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/ScriptingServletFilter.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/scripting/core/classIdentifier/JavaDynamicClassIdentifierTest.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java
myfaces/extensions/scripting/trunk/extscript-examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/instantbean/HelloBean.java
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/core/util/WeavingContext.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/core/util/WeavingContext.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/core/util/WeavingContext.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/core/util/WeavingContext.java Fri Mar 26 14:48:57 2010
@@ -30,6 +30,7 @@ import java.lang.reflect.InvocationHandl
import java.lang.reflect.Proxy;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.atomic.AtomicBoolean;
import java.util.logging.Logger;
/**
@@ -78,6 +79,11 @@ public class WeavingContext {
private static final Map<Integer, CompilationResult> _compilationResults = new ConcurrentHashMap<Integer, CompilationResult>();
+ /**
+ * per default the weaver is not set up
+ */
+ private static AtomicBoolean _enabled = new AtomicBoolean(false);
+
public static void init() {
}
@@ -155,7 +161,11 @@ public class WeavingContext {
* @return true in case of being scriptable
*/
public static boolean isScriptingEnabled() {
- return _weaverHolder.get() != null;
+ return _enabled.get();
+ }
+
+ public static void setScriptingEnabled(boolean enabled) {
+ _enabled = new AtomicBoolean(enabled);
}
/**
@@ -166,7 +176,7 @@ public class WeavingContext {
*/
public static ScriptingWeaver getWeaver() {
//shutting down condition _weaverHolder == null due to separate thread
- if(_weaverHolder == null) {
+ if (_weaverHolder == null) {
return null;
}
ScriptingWeaver weaver = (ScriptingWeaver) _weaverHolder.get();
@@ -192,6 +202,9 @@ public class WeavingContext {
* @return a proxied reloading object of type theInterface
*/
public static Object createMethodReloadingProxyFromObject(Object o, Class theInterface, int artefactType) {
+ if (!isScriptingEnabled()) {
+ return o;
+ }
return Proxy.newProxyInstance(o.getClass().getClassLoader(),
new Class[]{theInterface},
new MethodLevelReloadingHandler(o, artefactType));
@@ -207,6 +220,9 @@ public class WeavingContext {
* @return
*/
public static Object createConstructorReloadingProxyFromObject(Object o, Class theInterface, int artefactType) {
+ if (!isScriptingEnabled()) {
+ return o;
+ }
return Proxy.newProxyInstance(o.getClass().getClassLoader(),
new Class[]{theInterface},
new MethodLevelReloadingHandler(o, artefactType));
@@ -241,8 +257,15 @@ public class WeavingContext {
return o;
}
+ /**
+ * checks if a class is dynamic
+ *
+ * @param clazz the class to be checked
+ * @return true if the class is of
+ * dynamic nature and our scripting system is enabled
+ */
public static boolean isDynamic(Class clazz) {
- return getWeaver().isDynamic(clazz);
+ return isScriptingEnabled() && getWeaver().isDynamic(clazz);
}
/**
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/refresh/FileChangedDaemon.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/refresh/FileChangedDaemon.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/refresh/FileChangedDaemon.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/refresh/FileChangedDaemon.java Fri Mar 26 14:48:57 2010
@@ -79,7 +79,7 @@ public class FileChangedDaemon extends T
public static synchronized FileChangedDaemon getInstance() {
//we currently keep it as singleton but in the long run we will move it into the context
//like everything else singleton-wise
- if (instance == null) {
+ if (WeavingContext.isScriptingEnabled() && instance == null) {
instance = new FileChangedDaemon();
/**
* daemon thread to allow forced
@@ -99,7 +99,7 @@ public class FileChangedDaemon extends T
* which performs the entire scanning process
*/
public void run() {
- while (running) {
+ while (WeavingContext.isScriptingEnabled() && running) {
if (externalContext != null && !contextInitialized) {
WeavingContext.initThread((ServletContext) externalContext.get());
contextInitialized = true;
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/CustomChainLoader.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/CustomChainLoader.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/CustomChainLoader.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/CustomChainLoader.java Fri Mar 26 14:48:57 2010
@@ -24,10 +24,10 @@ import org.apache.myfaces.scripting.core
import org.apache.myfaces.scripting.core.util.WeavingContext;
import org.apache.myfaces.scripting.loaders.groovy.GroovyScriptingWeaver;
import org.apache.myfaces.scripting.loaders.java.JavaScriptingWeaver;
+import org.apache.myfaces.scripting.refresh.RefreshContext;
import org.apache.myfaces.shared_impl.util.ClassLoaderExtension;
import javax.servlet.ServletContext;
-import java.util.logging.Level;
import java.util.logging.Logger;
/**
@@ -53,30 +53,67 @@ public class CustomChainLoader extends C
Logger log = Logger.getLogger(CustomChainLoader.class.getName());
- //TODO move the entire init code into the weavers
- //every weaver should know itself how to initialize itself
-
public CustomChainLoader(ServletContext servletContext) {
+ initWeavingContext();
+ initWeavers(servletContext);
+ initRefreshContext(servletContext);
+ }
+
+ private void initWeavingContext() {
+ log.fine("[EXT-SCRIPTING] initializing the base weaver");
+ WeavingContext.setScriptingEnabled(true);
+ }
+
+ private boolean initWeavers(ServletContext servletContext) {
+ log.fine("[EXT-SCRIPTING] initializing the weaving contexts");
+
ScriptingWeaver groovyWeaver = new GroovyScriptingWeaver(servletContext);
ScriptingWeaver javaWeaver = new JavaScriptingWeaver(servletContext);
setupScriptingPaths(servletContext, groovyWeaver, GROOVY_SOURCE_ROOT, CUSTOM_LOADER_PATHS);
setupScriptingPaths(servletContext, javaWeaver, JAVA_SOURCE_ROOT, CUSTOM_JAVA_LOADER_PATHS);
-
+ if (!WeavingContext.isScriptingEnabled()) {
+ return true;
+ }
this.scriptingWeaver = new CoreWeaver(groovyWeaver, javaWeaver);
//we have to store it because our filter
//does not trigger upon initialisation
WeavingContext.setWeaver(this.scriptingWeaver);
+ return false;
+ }
+
+ /**
+ * initialisation of the refresh context object
+ * the refresh context, is a context object which keeps
+ * the refresh information (refresh time, needs refresh) etc...
+ *
+ * @param servletContext the servlet context singleton which keeps
+ * the context for distribution
+ */
+ private void initRefreshContext(ServletContext servletContext) {
+ log.fine("[EXT-SCRIPTING] initializing the refresh context");
+
+ if (!WeavingContext.isScriptingEnabled()) {
+ return;
+ }
+ RefreshContext rContext = new RefreshContext();
+ servletContext.setAttribute("RefreshContext", rContext);
+ rContext.getDaemon().initWeavingContext(servletContext);
+ WeavingContext.setRefreshContext(rContext);
}
private void setupScriptingPaths(ServletContext servletContext, ScriptingWeaver weaver, String contextRootKey, String initParams) {
+ if (!WeavingContext.isScriptingEnabled()) {
+ return;
+ }
String additionalLoaderPaths;
String contextRoot = servletContext.getRealPath(contextRootKey);
- if(contextRoot == null) {
+ if (contextRoot == null) {
Logger logger = getLogger();
- logger.warning("[EXT-SCRIPTING] one of the standard paths could not be resolved: "+ contextRootKey + " this is either due to the path is missing or due to a configuration error! You can bypass the problem by setting additional loader paths if they are not set already!");
- contextRoot="";
+ logger.warning("[EXT-SCRIPTING] one of the standard paths could not be resolved: " + contextRootKey + " this is either due to the path is missing or due to a configuration error! You can bypass the problem by setting additional loader paths if they are not set already!");
+ contextRoot = "";
+
}
contextRoot = contextRoot.trim();
@@ -85,9 +122,13 @@ public class CustomChainLoader extends C
additionalLoaderPaths = servletContext.getInitParameter(initParams);
appendAdditionalPaths(additionalLoaderPaths, weaver);
if (additionalLoaderPaths == null || additionalLoaderPaths.trim().equals("")) {
- if(contextRoot.equals("")) {
+ if (contextRoot.equals("")) {
Logger logger = getLogger();
logger.warning("[EXT-SCRIPTING] Standard paths (WEB-INF/groovy and WEB-INF/java could not be determined, also no additional loader paths are set, I cannot start properly, please set additional loader paths for Ext-Scripting to work correctly!");
+ logger.warning("[EXT-SCRIPTING] I am disabling Ext-Scripting!");
+
+ WeavingContext.setScriptingEnabled(false);
+ return;
}
weaver.appendCustomScriptPath(scriptingRoot);
weaver.appendCustomScriptPath(classRoot);
@@ -126,7 +167,6 @@ public class CustomChainLoader extends C
else if (name.startsWith("org.apache") && !name.startsWith("org.apache.myfaces")) {
return null;
}
-
return scriptingWeaver.loadScriptingClassFromName(name);
}
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/ScriptingServletFilter.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/ScriptingServletFilter.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/ScriptingServletFilter.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/ScriptingServletFilter.java Fri Mar 26 14:48:57 2010
@@ -30,7 +30,6 @@ import java.util.logging.Logger;
/**
* Scripting servlet filter
*
- * TODO we have a concurrency problem here, what if a request
* hits the filter while the
* init system is not entirely finished yet
*
@@ -66,6 +65,10 @@ public class ScriptingServletFilter impl
/**
* Checks for an initialized system and if not the filter will be deactivated
+ *
+ * the idea is to check the context in regular intervals
+ * whether the startup process has been finished and then
+ * allow the requests to pass through
*/
private void assertInitialized() {
if(active) return;
Copied: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java (from r927428, myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java)
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java?p2=myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java&p1=myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java&r1=927428&r2=927882&rev=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java Fri Mar 26 14:48:57 2010
@@ -34,13 +34,12 @@ import java.util.concurrent.atomic.Atomi
import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Logger;
-
/**
* @author werpu
* <p/>
* <p/>
* Startup context plugin chainloader
- * for MyFaces 1.2.x,
+ * for MyFaces
* we hook ourselves into the startup event
* system we have for MyFaces 1.2.x+ to do the initial
* configuration before the MyFaces init itself starts!
@@ -58,53 +57,16 @@ public class StartupServletContextPlugin
servletContext.setAttribute(ScriptingConst.CTX_REQUEST_CNT, new AtomicInteger(0));
servletContext.setAttribute(ScriptingConst.CTX_STARTUP, new AtomicBoolean(Boolean.TRUE));
-
initConfig(servletContext);
- CustomChainLoader loader = initChainLoader(servletContext);
- ScriptingWeaver weaver = initScriptingWeaver(servletContext, loader);
- initRefreshContext(servletContext);
-
- initInitialCompileAndScan(weaver);
- }
-
- /**
- * initiates the first compile and scan in the subsystem
- *
- * @param weaver our weaver which receives the trigger calls
- */
- private void initInitialCompileAndScan(ScriptingWeaver weaver) {
- log.info("[EXT-SCRIPTING] Compiling all sources for the first time");
- weaver.initiateStartup();
+ initChainLoader(servletContext);
+ initStartup();
}
- /**
- * initialisation of the refresh context object
- * the refresh context, is a context object which keeps
- * the refresh information (refresh time, needs refresh) etc...
- *
- * @param servletContext the servlet context singleton which keeps
- * the context for distribution
- */
- private void initRefreshContext(ServletContext servletContext) {
- RefreshContext rContext = new RefreshContext();
- servletContext.setAttribute("RefreshContext", rContext);
- rContext.getDaemon().initWeavingContext(servletContext);
- WeavingContext.setRefreshContext(rContext);
- }
-
- /**
- * The initialisation of our global weaver chain
- * which triggers the various subweavers depending
- * on the scripting engine plugged in.
- *
- * @param servletContext the application scoped holder for our weaver
- * @param loader the chain loader which serves the weavers
- * @return the weaver instance which is generated and stored
- */
- private ScriptingWeaver initScriptingWeaver(ServletContext servletContext, CustomChainLoader loader) {
- ScriptingWeaver weaver = loader.getScriptingWeaver();
- servletContext.setAttribute("ScriptingWeaver", weaver);
- return weaver;
+ private void initStartup() {
+ if (WeavingContext.isScriptingEnabled()) {
+ log.info("[EXT-SCRIPTING] Compiling all sources for the first time");
+ WeavingContext.getWeaver().initiateStartup();
+ }
}
/**
@@ -172,10 +134,10 @@ public class StartupServletContextPlugin
public void postInit(ServletContextEvent evt) {
evt.getServletContext().setAttribute(ScriptingConst.CTX_STARTUP, new AtomicBoolean(Boolean.FALSE));
-
}
public void preDestroy(ServletContextEvent evt) {
+
}
public void postDestroy(ServletContextEvent evt) {
Propchange: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/scripting/servlet/StartupServletContextPluginChainLoader.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/scripting/core/classIdentifier/JavaDynamicClassIdentifierTest.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/scripting/core/classIdentifier/JavaDynamicClassIdentifierTest.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/scripting/core/classIdentifier/JavaDynamicClassIdentifierTest.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/scripting/core/classIdentifier/JavaDynamicClassIdentifierTest.java Fri Mar 26 14:48:57 2010
@@ -57,6 +57,7 @@ public class JavaDynamicClassIdentifierT
}
weaver = new CoreWeaver(new JavaScriptingWeaver());
+ TWeavingContext.setScriptingEnabled(true);
TWeavingContext.setWeaverForTesting(weaver);
}
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java Fri Mar 26 14:48:57 2010
@@ -47,20 +47,19 @@ public class ScriptingApplicationFactory
public ScriptingApplicationFactory(ApplicationFactory delegate) {
_delegate = delegate;
- scriptingEnabled = WeavingContext.isScriptingEnabled();
}
public Application getApplication() {
Application retVal = _delegate.getApplication(); //To change body of implemented methods use File | Settings | File Templates.
- if (scriptingEnabled && !(retVal instanceof ApplicationProxy))
+ if (WeavingContext.isScriptingEnabled() && !(retVal instanceof ApplicationProxy))
retVal = new ApplicationProxy(retVal);
return retVal;
}
public void setApplication(Application application) {
- if (scriptingEnabled && !(application instanceof ApplicationProxy))
+ if (WeavingContext.isScriptingEnabled() && !(application instanceof ApplicationProxy))
application = new ApplicationProxy(application);
_delegate.setApplication(application);
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java Fri Mar 26 14:48:57 2010
@@ -40,7 +40,6 @@ public class ScriptingFacesContextFactor
public ScriptingFacesContextFactory(FacesContextFactory delegate) {
_delegate = delegate;
- scriptingEnabled = WeavingContext.isScriptingEnabled();
}
public void setDelegate(FacesContextFactory delegate) {
@@ -49,12 +48,8 @@ public class ScriptingFacesContextFactor
public FacesContext getFacesContext(Object o, Object o1, Object o2, Lifecycle lifecycle) throws FacesException {
FacesContext retVal = _delegate.getFacesContext(o, o1, o2, lifecycle); //To change body of implemented methods use File | Settings | File Templates.
- //TODO check if we weave thise around our original
- //faces context to bypass our groovy dynamic reflection problems
- //TODO this is not fully done yet, the faces context is not
- //Woven around our method reloading weaver or our instantiation
- //mechanism
- if (scriptingEnabled && !(retVal instanceof FacesContextProxy))
+
+ if (WeavingContext.isScriptingEnabled() && !(retVal instanceof FacesContextProxy))
return new FacesContextProxy(retVal);
return retVal;
}
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java Fri Mar 26 14:48:57 2010
@@ -39,7 +39,6 @@ public class ScriptingLifecycleFactory e
public ScriptingLifecycleFactory(LifecycleFactory delegate) {
_delegate = delegate;
- scriptingEnabled = WeavingContext.isScriptingEnabled();
}
public void addLifecycle(String s, Lifecycle lifecycle) {
@@ -50,7 +49,7 @@ public class ScriptingLifecycleFactory e
public Lifecycle getLifecycle(String s) {
Lifecycle retVal = _delegate.getLifecycle(s);
- if (scriptingEnabled && !(retVal instanceof LifefcycleProxy))
+ if (WeavingContext.isScriptingEnabled() && !(retVal instanceof LifefcycleProxy))
retVal = new LifefcycleProxy(retVal);
return retVal;
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java Fri Mar 26 14:48:57 2010
@@ -38,11 +38,11 @@ public class ScriptingRenderkitFactory e
public ScriptingRenderkitFactory(RenderKitFactory delegate) {
_delegate = delegate;
- scriptingEnabled = WeavingContext.isScriptingEnabled();
+
}
public void addRenderKit(String s, RenderKit renderKit) {
- if (renderKit != null && !(renderKit instanceof RenderkitProxy))
+ if (WeavingContext.isScriptingEnabled() && renderKit != null && !(renderKit instanceof RenderkitProxy))
renderKit = new RenderkitProxy(renderKit);
_delegate.addRenderKit(s, renderKit);
@@ -50,7 +50,7 @@ public class ScriptingRenderkitFactory e
public RenderKit getRenderKit(FacesContext facesContext, String s) {
RenderKit retVal = _delegate.getRenderKit(facesContext, s);
- if (retVal != null && !(retVal instanceof RenderkitProxy))
+ if (WeavingContext.isScriptingEnabled() && retVal != null && !(retVal instanceof RenderkitProxy))
retVal = new RenderkitProxy(retVal);
return retVal;
}
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java Fri Mar 26 14:48:57 2010
@@ -43,24 +43,24 @@ import javax.faces.application.Applicati
public class ScriptingApplicationFactory extends ApplicationFactory implements Decorated {
ApplicationFactory _delegate;
- boolean scriptingEnabled = false;
+
public ScriptingApplicationFactory(ApplicationFactory delegate) {
_delegate = delegate;
- scriptingEnabled = WeavingContext.isScriptingEnabled();
+
}
public Application getApplication() {
Application retVal = _delegate.getApplication(); //To change body of implemented methods use File | Settings | File Templates.
- if (scriptingEnabled && !(retVal instanceof ApplicationProxy))
+ if (WeavingContext.isScriptingEnabled() && !(retVal instanceof ApplicationProxy))
retVal = new ApplicationProxy(retVal);
return retVal;
}
public void setApplication(Application application) {
- if (scriptingEnabled && !(application instanceof ApplicationProxy))
+ if (WeavingContext.isScriptingEnabled() && !(application instanceof ApplicationProxy))
application = new ApplicationProxy(application);
_delegate.setApplication(application);
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java Fri Mar 26 14:48:57 2010
@@ -36,11 +36,9 @@ import javax.faces.FacesException;
public class ScriptingFacesContextFactory extends javax.faces.context.FacesContextFactory implements Decorated {
public FacesContextFactory _delegate;
- boolean scriptingEnabled = false;
public ScriptingFacesContextFactory(FacesContextFactory delegate) {
_delegate = delegate;
- scriptingEnabled = WeavingContext.isScriptingEnabled();
}
public void setDelegate(FacesContextFactory delegate) {
@@ -49,12 +47,8 @@ public class ScriptingFacesContextFactor
public FacesContext getFacesContext(Object o, Object o1, Object o2, Lifecycle lifecycle) throws FacesException {
FacesContext retVal = _delegate.getFacesContext(o, o1, o2, lifecycle); //To change body of implemented methods use File | Settings | File Templates.
- //TODO check if we weave thise around our original
- //faces context to bypass our groovy dynamic reflection problems
- //TODO this is not fully done yet, the faces context is not
- //Woven around our method reloading weaver or our instantiation
- //mechanism
- if (scriptingEnabled && !(retVal instanceof FacesContextProxy))
+
+ if (WeavingContext.isScriptingEnabled() && !(retVal instanceof FacesContextProxy))
return new FacesContextProxy(retVal);
return retVal;
}
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java Fri Mar 26 14:48:57 2010
@@ -35,22 +35,21 @@ import java.util.Iterator;
public class ScriptingLifecycleFactory extends LifecycleFactory implements Decorated {
LifecycleFactory _delegate;
- boolean scriptingEnabled = false;
+
public ScriptingLifecycleFactory(LifecycleFactory delegate) {
_delegate = delegate;
- scriptingEnabled = WeavingContext.isScriptingEnabled();
}
public void addLifecycle(String s, Lifecycle lifecycle) {
- if (scriptingEnabled && !(lifecycle instanceof LifefcycleProxy))
+ if (WeavingContext.isScriptingEnabled() && !(lifecycle instanceof LifefcycleProxy))
lifecycle = new LifefcycleProxy(lifecycle);
_delegate.addLifecycle(s, lifecycle);
}
public Lifecycle getLifecycle(String s) {
Lifecycle retVal = _delegate.getLifecycle(s);
- if (scriptingEnabled && !(retVal instanceof LifefcycleProxy))
+ if (WeavingContext.isScriptingEnabled() && !(retVal instanceof LifefcycleProxy))
retVal = new LifefcycleProxy(retVal);
return retVal;
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java Fri Mar 26 14:48:57 2010
@@ -34,15 +34,13 @@ import java.util.Iterator;
*/
public class ScriptingRenderkitFactory extends RenderKitFactory implements Decorated {
- boolean scriptingEnabled = false;
public ScriptingRenderkitFactory(RenderKitFactory delegate) {
_delegate = delegate;
- scriptingEnabled = WeavingContext.isScriptingEnabled();
}
public void addRenderKit(String s, RenderKit renderKit) {
- if (renderKit != null && !(renderKit instanceof RenderkitProxy))
+ if (WeavingContext.isScriptingEnabled() && renderKit != null && !(renderKit instanceof RenderkitProxy))
renderKit = new RenderkitProxy(renderKit);
_delegate.addRenderKit(s, renderKit);
@@ -50,7 +48,7 @@ public class ScriptingRenderkitFactory e
public RenderKit getRenderKit(FacesContext facesContext, String s) {
RenderKit retVal = _delegate.getRenderKit(facesContext, s);
- if (retVal != null && !(retVal instanceof RenderkitProxy))
+ if (WeavingContext.isScriptingEnabled() && retVal != null && !(retVal instanceof RenderkitProxy))
retVal = new RenderkitProxy(retVal);
return retVal;
}
Modified: myfaces/extensions/scripting/trunk/extscript-examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/instantbean/HelloBean.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/instantbean/HelloBean.java?rev=927882&r1=927881&r2=927882&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/instantbean/HelloBean.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/instantbean/HelloBean.java Fri Mar 26 14:48:57 2010
@@ -37,7 +37,7 @@ public class HelloBean {
}
public String getHello() {
- return hello + addedMethod();
+ return hello ;
}
public void setHello(String hello) {