package org.jboss.weld.environment.osgi; import org.jboss.weld.bootstrap.api.SingletonProvider; import org.jboss.weld.environment.osgi.integration.BundleSingletonProvider; import org.osgi.cdi.api.integration.CDIContainerFactory; import org.osgi.framework.BundleActivator; import org.osgi.framework.BundleContext; import org.osgi.framework.ServiceRegistration; /** * * @author Mathieu ANCELIN - SERLI (mathieu.ancelin@serli.com) */ public class Activator implements BundleActivator { private CDIContainerFactory factory = new WeldCDIContainerFactory(); private ServiceRegistration reg = null; @Override public void start(BundleContext context) throws Exception { SingletonProvider.initialize(new BundleSingletonProvider()); reg = context.registerService(CDIContainerFactory.class.getName(), factory, null); } @Override public void stop(BundleContext context) throws Exception { reg.unregister(); SingletonProvider.reset(); } }