You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by dw...@apache.org on 2010/02/19 04:10:33 UTC
svn commit: r911684 -
/openjpa/trunk/openjpa/src/main/java/org/apache/openjpa/osgi/PersistenceActivator.java
Author: dwoods
Date: Fri Feb 19 03:10:33 2010
New Revision: 911684
URL: http://svn.apache.org/viewvc?rev=911684&view=rev
Log:
OPENJPA-1512 minor updates to BundleActivator support
Modified:
openjpa/trunk/openjpa/src/main/java/org/apache/openjpa/osgi/PersistenceActivator.java
Modified: openjpa/trunk/openjpa/src/main/java/org/apache/openjpa/osgi/PersistenceActivator.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa/src/main/java/org/apache/openjpa/osgi/PersistenceActivator.java?rev=911684&r1=911683&r2=911684&view=diff
==============================================================================
--- openjpa/trunk/openjpa/src/main/java/org/apache/openjpa/osgi/PersistenceActivator.java (original)
+++ openjpa/trunk/openjpa/src/main/java/org/apache/openjpa/osgi/PersistenceActivator.java Fri Feb 19 03:10:33 2010
@@ -23,6 +23,7 @@
import org.apache.openjpa.persistence.PersistenceProviderImpl;
import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;
+import org.osgi.framework.ServiceRegistration;
/**
@@ -36,24 +37,26 @@
// following would be set by Aries to expose their OSGi enabled provider
public static final String PERSISTENCE_PROVIDER = PersistenceProvider.class.getName();
public static final String OSGI_PERSISTENCE_PROVIDER = PersistenceProviderImpl.class.getName();
- private static BundleContext ctx;
+ private ServiceRegistration svcReg = null;
/* (non-Javadoc)
* @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
*/
- public void start(BundleContext arg0) throws Exception {
- ctx = arg0;
+ public void start(BundleContext ctx) throws Exception {
PersistenceProvider provider = new PersistenceProviderImpl();
Hashtable<String, String> props = new Hashtable<String, String>();
props.put(PERSISTENCE_PROVIDER_ARIES, OSGI_PERSISTENCE_PROVIDER);
- ctx.registerService(PERSISTENCE_PROVIDER, provider, props);
+ svcReg = ctx.registerService(PERSISTENCE_PROVIDER, provider, props);
}
/* (non-Javadoc)
* @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
*/
- public void stop(BundleContext arg0) throws Exception {
- // no-op
+ public void stop(BundleContext ctx) throws Exception {
+ if (svcReg != null) {
+ svcReg.unregister();
+ svcReg = null;
+ }
}
}