[webbeans-commits] Webbeans SVN: r2508 - in ri/trunk/impl/src/main/java/org/jboss/webbeans: bootstrap and 1 other directories.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Fri Apr 17 20:46:28 EDT 2009
Author: pete.muir at jboss.org
Date: 2009-04-17 20:46:28 -0400 (Fri, 17 Apr 2009)
New Revision: 2508
Modified:
ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/bootstrap/WebBeansBootstrap.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ApplicationContext.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ConversationContext.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentContext.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/RequestContext.java
ri/trunk/impl/src/main/java/org/jboss/webbeans/context/SessionContext.java
Log:
Move contexts to use the service registry
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java 2009-04-18 00:37:50 UTC (rev 2507)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java 2009-04-18 00:46:28 UTC (rev 2508)
@@ -1146,10 +1146,10 @@
{
log.trace("Ending application");
shutdownExecutors();
- CurrentManager.cleanup();
ApplicationContext.instance().destroy();
ApplicationContext.instance().setActive(false);
ApplicationContext.instance().setBeanStore(null);
+ CurrentManager.cleanup();
}
/**
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bootstrap/WebBeansBootstrap.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bootstrap/WebBeansBootstrap.java 2009-04-18 00:37:50 UTC (rev 2507)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bootstrap/WebBeansBootstrap.java 2009-04-18 00:46:28 UTC (rev 2508)
@@ -115,6 +115,7 @@
log.info("@Resource injection not available.");
}
addImplementationServices();
+ createContexts();
this.manager = ManagerImpl.newRootManager(ServiceRegistries.unmodifiableServiceRegistry(getServices()));
CurrentManager.setRootManager(manager);
initializeContexts();
@@ -221,12 +222,21 @@
protected void initializeContexts()
{
- manager.addContext(DependentContext.create());
- manager.addContext(RequestContext.create());
- manager.addContext(SessionContext.create());
- manager.addContext(ApplicationContext.create());
- manager.addContext(ConversationContext.create());
+ manager.addContext(DependentContext.instance());
+ manager.addContext(RequestContext.instance());
+ manager.addContext(ConversationContext.instance());
+ manager.addContext(SessionContext.instance());
+ manager.addContext(ApplicationContext.instance());
}
+
+ protected void createContexts()
+ {
+ getServices().add(DependentContext.class, new DependentContext());
+ getServices().add(RequestContext.class, new RequestContext());
+ getServices().add(ConversationContext.class, new ConversationContext());
+ getServices().add(SessionContext.class, new SessionContext());
+ getServices().add(ApplicationContext.class, new ApplicationContext());
+ }
protected void beginApplication(BeanStore applicationBeanStore)
{
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ApplicationContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ApplicationContext.java 2009-04-18 00:37:50 UTC (rev 2507)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ApplicationContext.java 2009-04-18 00:46:28 UTC (rev 2508)
@@ -27,8 +27,8 @@
import javax.context.ApplicationScoped;
-import org.jboss.webbeans.bootstrap.api.Singleton;
-import org.jboss.webbeans.bootstrap.api.SingletonProvider;
+import org.jboss.webbeans.CurrentManager;
+import org.jboss.webbeans.bootstrap.api.Service;
import org.jboss.webbeans.context.api.BeanStore;
/**
@@ -38,23 +38,14 @@
*
* @see org.jboss.webbeans.context.ApplicationContext
*/
-public class ApplicationContext extends AbstractMapContext
+public class ApplicationContext extends AbstractMapContext implements Service
{
-
- private static Singleton<ApplicationContext> INSTANCE = SingletonProvider.instance().create(ApplicationContext.class);
public static ApplicationContext instance()
{
- return INSTANCE.get();
+ return CurrentManager.rootManager().getServices().get(ApplicationContext.class);
}
- public static ApplicationContext create()
- {
- ApplicationContext context = new ApplicationContext();
- INSTANCE.set(context);
- return context;
- }
-
// The beans
private BeanStore beanStore;
// Is the context active?
@@ -63,7 +54,7 @@
/**
* Constructor
*/
- protected ApplicationContext()
+ public ApplicationContext()
{
super(ApplicationScoped.class);
this.active = new AtomicBoolean(false);
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ConversationContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ConversationContext.java 2009-04-18 00:37:50 UTC (rev 2507)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/ConversationContext.java 2009-04-18 00:46:28 UTC (rev 2508)
@@ -25,35 +25,25 @@
import javax.context.ConversationScoped;
+import org.jboss.webbeans.CurrentManager;
+import org.jboss.webbeans.bootstrap.api.Service;
import org.jboss.webbeans.log.LogProvider;
import org.jboss.webbeans.log.Logging;
-import org.jboss.webbeans.bootstrap.api.Singleton;
-import org.jboss.webbeans.bootstrap.api.SingletonProvider;
/**
* The conversation context
*
* @author Nicklas Karlsson
*/
-public class ConversationContext extends AbstractThreadLocalMapContext
+public class ConversationContext extends AbstractThreadLocalMapContext implements Service
{
private static LogProvider log = Logging.getLogProvider(ConversationContext.class);
- private static Singleton<ConversationContext> INSTANCE =
- SingletonProvider.instance().create(ConversationContext.class);
-
public static ConversationContext instance()
{
- return INSTANCE.get();
+ return CurrentManager.rootManager().getServices().get(ConversationContext.class);
}
- public static ConversationContext create()
- {
- ConversationContext context = new ConversationContext();
- INSTANCE.set(context);
- return context;
- }
-
/**
* Constructor
*/
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentContext.java 2009-04-18 00:37:50 UTC (rev 2507)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/DependentContext.java 2009-04-18 00:46:28 UTC (rev 2508)
@@ -30,30 +30,22 @@
import javax.context.CreationalContext;
import javax.context.Dependent;
-import org.jboss.webbeans.bootstrap.api.Singleton;
-import org.jboss.webbeans.bootstrap.api.SingletonProvider;
+import org.jboss.webbeans.CurrentManager;
+import org.jboss.webbeans.bootstrap.api.Service;
/**
* The dependent context
*
* @author Nicklas Karlsson
*/
-public class DependentContext extends AbstractContext
+public class DependentContext extends AbstractContext implements Service
{
- private static Singleton<DependentContext> INSTANCE = SingletonProvider.instance().create(DependentContext.class);
public static DependentContext instance()
{
- return INSTANCE.get();
+ return CurrentManager.rootManager().getServices().get(DependentContext.class);
}
- public static DependentContext create()
- {
- DependentContext ctx = new DependentContext();
- INSTANCE.set(ctx);
- return ctx;
- }
-
private final ThreadLocal<AtomicInteger> reentrantActiveCount;
// A (possible null) request to store dependents created
private final ThreadLocal<DependentStorageRequest> dependentStorageRequest;
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/RequestContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/RequestContext.java 2009-04-18 00:37:50 UTC (rev 2507)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/RequestContext.java 2009-04-18 00:46:28 UTC (rev 2508)
@@ -25,35 +25,26 @@
import javax.context.RequestScoped;
-import org.jboss.webbeans.bootstrap.api.Singleton;
-import org.jboss.webbeans.bootstrap.api.SingletonProvider;
+import org.jboss.webbeans.CurrentManager;
+import org.jboss.webbeans.bootstrap.api.Service;
/**
* The request context
*
* @author Nicklas Karlsson
*/
-public class RequestContext extends AbstractThreadLocalMapContext
+public class RequestContext extends AbstractThreadLocalMapContext implements Service
{
-
- private static Singleton<RequestContext> INSTANCE = SingletonProvider.instance().create(RequestContext.class);
public static RequestContext instance()
{
- return INSTANCE.get();
+ return CurrentManager.rootManager().getServices().get(RequestContext.class);
}
- public static RequestContext create()
- {
- RequestContext context = new RequestContext();
- INSTANCE.set(context);
- return context;
- }
-
/**
* Constructor
*/
- protected RequestContext()
+ public RequestContext()
{
super(RequestScoped.class);
}
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/context/SessionContext.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/context/SessionContext.java 2009-04-18 00:37:50 UTC (rev 2507)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/context/SessionContext.java 2009-04-18 00:46:28 UTC (rev 2508)
@@ -25,8 +25,8 @@
import javax.context.SessionScoped;
-import org.jboss.webbeans.bootstrap.api.Singleton;
-import org.jboss.webbeans.bootstrap.api.SingletonProvider;
+import org.jboss.webbeans.CurrentManager;
+import org.jboss.webbeans.bootstrap.api.Service;
import org.jboss.webbeans.log.LogProvider;
import org.jboss.webbeans.log.Logging;
@@ -35,28 +35,19 @@
*
* @author Nicklas Karlsson
*/
-public class SessionContext extends AbstractThreadLocalMapContext
+public class SessionContext extends AbstractThreadLocalMapContext implements Service
{
private static LogProvider log = Logging.getLogProvider(SessionContext.class);
- private static Singleton<SessionContext> INSTANCE = SingletonProvider.instance().create(SessionContext.class);
-
public static SessionContext instance()
{
- return INSTANCE.get();
+ return CurrentManager.rootManager().getServices().get(SessionContext.class);
}
- public static SessionContext create()
- {
- SessionContext context = new SessionContext();
- INSTANCE.set(context);
- return context;
- }
-
/**
* Constructor
*/
- protected SessionContext()
+ public SessionContext()
{
super(SessionScoped.class);
log.trace("Created session context");
More information about the weld-commits
mailing list