[jboss-cvs] JBossAS SVN: r96760 - projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Nov 23 16:19:56 EST 2009


Author: alesj
Date: 2009-11-23 16:19:56 -0500 (Mon, 23 Nov 2009)
New Revision: 96760

Modified:
   projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiScopeInfo.java
   projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiServiceState.java
Log:
[JBOSGI-141]; getTarget should be simpl, tracking is done elsewhere.

Modified: projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiScopeInfo.java
===================================================================
--- projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiScopeInfo.java	2009-11-23 21:18:59 UTC (rev 96759)
+++ projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiScopeInfo.java	2009-11-23 21:19:56 UTC (rev 96760)
@@ -77,7 +77,7 @@
       if (qualifier instanceof Class)
          return key;
 
-      Object service = serviceState.getService();
+      Object service = serviceState.getTarget();
       if (service != null)
       {
          Class<?> clazz = service.getClass();

Modified: projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiServiceState.java
===================================================================
--- projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiServiceState.java	2009-11-23 21:18:59 UTC (rev 96759)
+++ projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiServiceState.java	2009-11-23 21:19:56 UTC (rev 96760)
@@ -41,7 +41,6 @@
 import org.jboss.osgi.framework.plugins.FrameworkEventsPlugin;
 import org.jboss.osgi.framework.util.CaseInsensitiveDictionary;
 import org.jboss.osgi.spi.util.BundleClassLoader;
-import org.jboss.reflect.spi.ClassInfo;
 import org.jboss.util.collection.ConcurrentSet;
 import org.jboss.util.id.GUID;
 import org.osgi.framework.Bundle;
@@ -198,39 +197,18 @@
       setScopeInfo(OSGiScopeInfo.createScopeInfo(getName(), className, clazz, this));
    }
 
-   /**
-    * Get service directly.
-    *
-    * @return the service
-    */
-   Object getService()
-   {
-      return getService(bundleState);
-   }
-
    @Override
    public Object getTarget()
    {
-      return bundleState.getService(this);
+      // get service directly
+      return getService(bundleState);
    }
 
-   public Object ungetTarget()
-   {
-      bundleState.ungetService(this);
-      return getService();
-   }
-
    public Object invoke(String name, Object[] parameters, String[] signature) throws Throwable
    {
-      Object service = getService();
-      return getBeanInfo().invoke(service, name, signature, parameters);
+      return getBeanInfo().invoke(getTarget(), name, signature, parameters);
    }
 
-   public ClassInfo getClassInfo()
-   {
-      return getBeanInfo().getClassInfo();
-   }
-
    public ClassLoader getClassLoader() throws Throwable
    {
       SecurityManager sm = System.getSecurityManager();
@@ -242,27 +220,32 @@
 
    public Object get(String name) throws Throwable
    {
-      Object service = getService();
-      return getBeanInfo().getProperty(service, name);
+      return getBeanInfo().getProperty(getTarget(), name);
    }
 
    public void set(String name, Object value) throws Throwable
    {
-      Object service = getService();
-      getBeanInfo().setProperty(service, name, value);
+      getBeanInfo().setProperty(getTarget(), name, value);
    }
 
-   public BeanInfo getBeanInfo()
+   /**
+    * Get bean info.
+    *
+    * @return the bean info
+    */
+   protected BeanInfo getBeanInfo()
    {
+      if (isUnregistered())
+         return null;
+
       if (beanInfo == null)
       {
          try
          {
             Kernel kernel = bundleState.getBundleManager().getKernel();
             KernelConfigurator configurator = kernel.getConfigurator();
-            Object service = getService();
-            if (service != null)
-               beanInfo = configurator.getBeanInfo(service.getClass());
+            Object service = getTarget(); // should not be null, we're not unregistered
+            beanInfo = configurator.getBeanInfo(service.getClass());
          }
          catch (Throwable t)
          {




More information about the jboss-cvs-commits mailing list