Author: reto
Date: Sat Mar 12 20:33:38 2011
New Revision: 1080996

URL: http://svn.apache.org/viewvc?rev=1080996&view=rev
Log:
no longer attempting to register graph-services when the component is already 
deactivating

Modified:
    
incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/access/TcManager.java

Modified: 
incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/access/TcManager.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/access/TcManager.java?rev=1080996&r1=1080995&r2=1080996&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/access/TcManager.java
 (original)
+++ 
incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/access/TcManager.java
 Sat Mar 12 20:33:38 2011
@@ -53,6 +53,8 @@ import org.apache.felix.scr.annotations.
 import org.apache.felix.scr.annotations.ReferenceCardinality;
 import org.apache.felix.scr.annotations.ReferencePolicy;
 import org.apache.felix.scr.annotations.Service;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleContext;
 
 /**
  * This class implements <code>TcManager</code>, delegating the actual
@@ -415,9 +417,12 @@ public class TcManager extends TcProvide
                        interfaceNames = new String[] {Graph.class.getName()};
                        service = new GraphServiceFactory(this, name, 
tcAccessController);
                }
-               ServiceRegistration serviceReg = 
componentContext.getBundleContext()
-                               .registerService(interfaceNames, service, 
props);
-               serviceRegistrations.put(name, serviceReg);
+               final int bundleState = 
componentContext.getBundleContext().getBundle().getState();
+               if ((bundleState == Bundle.ACTIVE) || (bundleState == 
Bundle.STARTING)) {
+                       ServiceRegistration serviceReg = 
componentContext.getBundleContext()
+                                       .registerService(interfaceNames, 
service, props);
+                       serviceRegistrations.put(name, serviceReg);
+               }
        }
 
        @Override


Reply via email to