[exo-jcr-commits] exo-jcr SVN: r3740 - ws/trunk/exo.ws.rest.ext/src/main/java/org/exoplatform/services/rest/ext/groovy.

do-not-reply at jboss.org do-not-reply at jboss.org
Tue Dec 28 04:30:27 EST 2010


Author: aparfonov
Date: 2010-12-28 04:30:26 -0500 (Tue, 28 Dec 2010)
New Revision: 3740

Modified:
   ws/trunk/exo.ws.rest.ext/src/main/java/org/exoplatform/services/rest/ext/groovy/ExtendedGroovyClassLoader.java
Log:
EXOJCR-1105

Modified: ws/trunk/exo.ws.rest.ext/src/main/java/org/exoplatform/services/rest/ext/groovy/ExtendedGroovyClassLoader.java
===================================================================
--- ws/trunk/exo.ws.rest.ext/src/main/java/org/exoplatform/services/rest/ext/groovy/ExtendedGroovyClassLoader.java	2010-12-28 09:11:49 UTC (rev 3739)
+++ ws/trunk/exo.ws.rest.ext/src/main/java/org/exoplatform/services/rest/ext/groovy/ExtendedGroovyClassLoader.java	2010-12-28 09:30:26 UTC (rev 3740)
@@ -196,12 +196,18 @@
             cunit.setClassgenCallback(collector);
             cunit.compile(phase);
 
-            for (Iterator iter = collector.getLoadedClasses().iterator(); iter.hasNext();) {
+            for (Iterator iter = collector.getLoadedClasses().iterator(); iter.hasNext();)
+            {
                Class clazz = (Class)iter.next();
                String classname = clazz.getName();
                int i = classname.lastIndexOf('.');
                if (i != -1)
-                  definePackage(classname.substring(0, i), null, null, null, null, null, null, null);
+               {
+                  String pkgname = classname.substring(0, i);
+                  Package pkg = getPackage(pkgname);
+                  if (pkg == null)
+                     definePackage(pkgname, null, null, null, null, null, null, null);
+               }
                setClassCacheEntry(clazz);
             }
 
@@ -239,7 +245,12 @@
             String classname = clazz.getName();
             int i = classname.lastIndexOf('.');
             if (i != -1)
-               definePackage(classname.substring(0, i), null, null, null, null, null, null, null);
+            {
+               String pkgname = classname.substring(0, i);
+               Package pkg = getPackage(pkgname);
+               if (pkg == null)
+                  definePackage(pkgname, null, null, null, null, null, null, null);
+            }
             setClassCacheEntry(clazz);
          }
          List<Class> compiledClasses = collector.getCompiledClasses();



More information about the exo-jcr-commits mailing list