EXTSCRIPT-154: Code Rewrite/Refactoring, fixing issues
git-svn-id: https://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk@1299587 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/context/WeavingContext.java b/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/context/WeavingContext.java
index 6b651e2..6f88f98 100644
--- a/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/context/WeavingContext.java
+++ b/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/context/WeavingContext.java
@@ -210,9 +210,10 @@
if (resource.isTainted() || resource.getAClass() == null)
{
clazz = _implementation.forName(clazz.getName());
+ //TODO not needed anymore, done by the forName now
resource.setAClass(clazz);
}
- return null;
+ return clazz;
}
public Object reload(Object instance, int strategyType)
diff --git a/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/loader/ThrowAwayClassloader.java b/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/loader/ThrowAwayClassloader.java
index 6032f8d..0c72c09 100644
--- a/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/loader/ThrowAwayClassloader.java
+++ b/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/loader/ThrowAwayClassloader.java
@@ -55,6 +55,9 @@
*/
public Class<?> loadClass(String className) throws ClassNotFoundException
{
+ if(className.contains("TestResourceHandler")) {
+ System.out.println("Debugppint found");
+ }
ClassResource res = (ClassResource) WeavingContext.getInstance().getResource(className);
if (res == null) return super.loadClass(className);
if (!res.isTainted() && res.getAClass() != null) return res.getAClass();
diff --git a/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/reloading/SimpleReloadingStrategy.java b/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/reloading/SimpleReloadingStrategy.java
index aa30a35..e01a0da 100644
--- a/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/reloading/SimpleReloadingStrategy.java
+++ b/extscript-core-root/extscript-core/src/main/java/rewrite/org/apache/myfaces/extensions/scripting/core/reloading/SimpleReloadingStrategy.java
@@ -59,10 +59,13 @@
* @return either the same object or a new instance utilizing the changed code
*/
public Object reload(Object scriptingInstance, int artifactType) {
-
+ if(scriptingInstance.getClass().getName().contains("TestResourceHandler")) {
+ System.out.println("debugpoint found");
+ }
//reload the class to get new static content if needed
Class aclass = WeavingContext.getInstance().reload(scriptingInstance.getClass());
- if (aclass.hashCode() == scriptingInstance.getClass().hashCode()) {
+
+ if (aclass == null || aclass.hashCode() == scriptingInstance.getClass().hashCode()) {
//class of this object has not changed although
// reload is enabled we can skip the rest now
return scriptingInstance;