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/06/28 12:36:34 UTC

svn commit: r958534 - in /myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting: api/ refresh/ sandbox/extensionevents/ servlet/

Author: werpu
Date: Mon Jun 28 10:36:34 2010
New Revision: 958534

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

Added:
    myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/ClassScanRecommended.java
Removed:
    myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/UpdateConfigurationRecommended.java
Modified:
    myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/api/BaseWeaver.java
    myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/refresh/FileChangedDaemon.java
    myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/FullRecompileRecommended.java
    myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/SystemInitializedEvent.java
    myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/servlet/StartupServletContextPluginChainLoader.java

Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/api/BaseWeaver.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/api/BaseWeaver.java?rev=958534&r1=958533&r2=958534&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/api/BaseWeaver.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/api/BaseWeaver.java Mon Jun 28 10:36:34 2010
@@ -26,6 +26,8 @@ import org.apache.myfaces.extensions.scr
 import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
 import org.apache.myfaces.extensions.scripting.refresh.RefreshContext;
 import org.apache.myfaces.extensions.scripting.refresh.ReloadingMetadata;
+import org.apache.myfaces.extensions.scripting.sandbox.extensionevents.FullRecompileRecommended;
+import org.apache.myfaces.extensions.scripting.sandbox.extensionevents.FullScanRecommended;
 
 import javax.faces.context.FacesContext;
 import java.io.File;
@@ -254,6 +256,10 @@ public abstract class BaseWeaver impleme
      * full scan, scans for all artifacts in all files
      */
     public void fullClassScan() {
+
+        WeavingContext.getExtensionEventRegistry().sendEvent(new FullScanRecommended());
+
+        //now we scan the classes which are under our domain
         _dependencyScanner.scanPaths();
 
         if (_annotationScanner == null || FacesContext.getCurrentInstance() == null) {
@@ -352,10 +358,16 @@ public abstract class BaseWeaver impleme
     }
 
     public void fullRecompile() {
+
         if (isFullyRecompiled() || !isRecompileRecommended()) {
             return;
         }
 
+        //we now issue the full recompile event here:
+        WeavingContext.getExtensionEventRegistry().sendEvent(new FullRecompileRecommended(getScriptingEngine()));
+
+        //we now issue the recompile for the resources under our domain, TODO it might be wise to move that to an event listener as well 
+
         if (_compiler == null) {
             _compiler = instantiateCompiler();//new ReflectCompilerFacade();
         }

Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/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/extensions/scripting/refresh/FileChangedDaemon.java?rev=958534&r1=958533&r2=958534&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/refresh/FileChangedDaemon.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/refresh/FileChangedDaemon.java Mon Jun 28 10:36:34 2010
@@ -22,6 +22,7 @@ import org.apache.myfaces.extensions.scr
 import org.apache.myfaces.extensions.scripting.api.ScriptingWeaver;
 import org.apache.myfaces.extensions.scripting.core.dependencyScan.core.ClassDependencies;
 import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
+import org.apache.myfaces.extensions.scripting.sandbox.extensionevents.ClassTaintedEvent;
 
 import javax.servlet.ServletContext;
 import java.io.File;
@@ -166,6 +167,7 @@ public class FileChangedDaemon extends T
 
                 //we add our log entry for further reference
                 WeavingContext.getRefreshContext().addTaintLogEntry(meta);
+                WeavingContext.getExtensionEventRegistry().sendEvent(new ClassTaintedEvent(meta));
             }
             //}
         }
@@ -194,6 +196,7 @@ public class FileChangedDaemon extends T
             metaData.setTaintedOnce(true);
             dependencyTainted(metaData.getAClass().getName());
             WeavingContext.getRefreshContext().addTaintLogEntry(metaData);
+            WeavingContext.getExtensionEventRegistry().sendEvent(new ClassTaintedEvent(metaData));
         }
     }
 

Added: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/ClassScanRecommended.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/ClassScanRecommended.java?rev=958534&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/ClassScanRecommended.java (added)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/ClassScanRecommended.java Mon Jun 28 10:36:34 2010
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.myfaces.extensions.scripting.sandbox.extensionevents;
+
+/**
+ * @author Werner Punz (latest modification by $Author$)
+ * @version $Revision$ $Date$
+ *
+ * TODO to be further specified once we have everything in place
+ */
+
+public class ClassScanRecommended extends ExtensionEvent {
+}

Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/FullRecompileRecommended.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/FullRecompileRecommended.java?rev=958534&r1=958533&r2=958534&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/FullRecompileRecommended.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/FullRecompileRecommended.java Mon Jun 28 10:36:34 2010
@@ -25,6 +25,17 @@ package org.apache.myfaces.extensions.sc
  */
 
 public class FullRecompileRecommended extends ExtensionEvent {
-    public FullRecompileRecommended() {
+    int scriptingEngine;
+
+    public FullRecompileRecommended(int scriptingEngine) {
+        this.scriptingEngine = scriptingEngine;
+    }
+
+    public int getScriptingEngine() {
+        return scriptingEngine;
+    }
+
+    public void setScriptingEngine(int scriptingEngine) {
+        this.scriptingEngine = scriptingEngine;
     }
 }

Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/SystemInitializedEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/SystemInitializedEvent.java?rev=958534&r1=958533&r2=958534&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/SystemInitializedEvent.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/sandbox/extensionevents/SystemInitializedEvent.java Mon Jun 28 10:36:34 2010
@@ -25,6 +25,6 @@ package org.apache.myfaces.extensions.sc
  */
 
 public class SystemInitializedEvent extends ExtensionEvent {
-    public SystemInitializedEvent(int eventIdentifier) {
+    public SystemInitializedEvent() {
     }
 }

Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/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/extensions/scripting/servlet/StartupServletContextPluginChainLoader.java?rev=958534&r1=958533&r2=958534&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/servlet/StartupServletContextPluginChainLoader.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/servlet/StartupServletContextPluginChainLoader.java Mon Jun 28 10:36:34 2010
@@ -22,6 +22,7 @@ import org.apache.myfaces.extensions.scr
 import org.apache.myfaces.extensions.scripting.core.util.ClassUtils;
 import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
 import org.apache.myfaces.extensions.scripting.refresh.RefreshContext;
+import org.apache.myfaces.extensions.scripting.sandbox.extensionevents.SystemInitializedEvent;
 import org.apache.myfaces.webapp.StartupListener;
 
 import javax.servlet.ServletContext;
@@ -97,6 +98,8 @@ public class StartupServletContextPlugin
         //tell the system that the startup phase is done
         WeavingContext.getWeaver().fullClassScan();
         evt.getServletContext().setAttribute(ScriptingConst.CTX_ATTR_STARTUP, new AtomicBoolean(Boolean.FALSE));
+
+        WeavingContext.getExtensionEventRegistry().sendEvent(new SystemInitializedEvent());
     }
 
     public void preDestroy(ServletContextEvent evt) {