[jboss-cvs] JBossAS SVN: r97459 - in projects/jboss-osgi/projects/runtime/framework/trunk/src: test/java/org/jboss/test/osgi/service/support/d and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Dec 4 08:43:11 EST 2009


Author: alesj
Date: 2009-12-04 08:43:11 -0500 (Fri, 04 Dec 2009)
New Revision: 97459

Modified:
   projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/classloading/OSGiClassLoaderSystem.java
   projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/service/support/d/D.java
Log:
Fix broken CLSystem usage.
It explains previous service-mix issues.

Modified: projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/classloading/OSGiClassLoaderSystem.java
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/classloading/OSGiClassLoaderSystem.java	2009-12-04 13:36:12 UTC (rev 97458)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/classloading/OSGiClassLoaderSystem.java	2009-12-04 13:43:11 UTC (rev 97459)
@@ -21,10 +21,13 @@
 */
 package org.jboss.osgi.framework.classloading;
 
+import org.jboss.classloader.plugins.filter.PatternClassFilter;
 import org.jboss.classloader.plugins.jdk.AbstractJDKChecker;
 import org.jboss.classloader.spi.ClassLoaderDomain;
 import org.jboss.classloader.spi.ClassLoaderSystem;
 import org.jboss.classloader.spi.ParentPolicy;
+import org.jboss.classloader.spi.filter.ClassFilterUtils;
+import org.jboss.classloader.spi.filter.RecursivePackageClassFilter;
 import org.jboss.osgi.framework.bundle.AbstractBundleState;
 import org.jboss.osgi.framework.bundle.OSGiBundleState;
 
@@ -44,7 +47,10 @@
    {
       ClassLoaderDomain domain = getDefaultDomain();
 
-      domain.setParentPolicy(ParentPolicy.BEFORE_BUT_JAVA_ONLY);
+      PatternClassFilter filter = RecursivePackageClassFilter.createRecursivePackageClassFilterFromString("org.osgi");
+      filter.setIncludeJava(true);
+      domain.setParentPolicy(new ParentPolicy(filter, ClassFilterUtils.NOTHING));
+
       AbstractJDKChecker.getExcluded().add(AbstractBundleState.class);
       AbstractJDKChecker.getExcluded().add(OSGiBundleState.class);
    }

Modified: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/service/support/d/D.java
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/service/support/d/D.java	2009-12-04 13:36:12 UTC (rev 97458)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/service/support/d/D.java	2009-12-04 13:43:11 UTC (rev 97459)
@@ -21,8 +21,6 @@
  */
 package org.jboss.test.osgi.service.support.d;
 
-import java.lang.reflect.Method;
-
 import org.jboss.test.osgi.service.support.a.A;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.ServiceFactory;
@@ -33,27 +31,10 @@
  */
 public class D implements ServiceFactory
 {
-   private static Object invoke(Object target, String getter)
-   {
-      try
-      {
-         Class<?> clazz = target.getClass();
-         Method m = clazz.getDeclaredMethod(getter);
-         return m.invoke(target);
-      }
-      catch (Exception e)
-      {
-         throw new RuntimeException(e);
-      }
-   }
-
    public Object getService(Bundle bundle, ServiceRegistration registration)
    {
       A a = new A();
-      // TODO -- why this doesn't work? java.lang.NoClassDefFoundError: org/osgi/framework/Bundle
-      // a.msg = bundle.getSymbolicName();
-      // TODO - but this does ...
-      a.msg = invoke(bundle, "getSymbolicName").toString();
+      a.msg = bundle.getSymbolicName();
       return a;
    }
 




More information about the jboss-cvs-commits mailing list