You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@clerezza.apache.org by re...@apache.org on 2011/03/12 21:33:38 UTC

svn commit: r1080996 - /incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/access/TcManager.java

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