[jboss-svn-commits] JBoss Common SVN: r3902 - arquillian/trunk/container-weld-embedded/src/main/java/org/jboss/arquillian/weld.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Jan 6 08:50:08 EST 2010
Author: aslak
Date: 2010-01-06 08:50:08 -0500 (Wed, 06 Jan 2010)
New Revision: 3902
Modified:
arquillian/trunk/container-weld-embedded/src/main/java/org/jboss/arquillian/weld/WeldSEContainer.java
Log:
ARQ-54 Changed to use the ContextLifecycle for lifecycle calls begin/end session/request
Modified: arquillian/trunk/container-weld-embedded/src/main/java/org/jboss/arquillian/weld/WeldSEContainer.java
===================================================================
--- arquillian/trunk/container-weld-embedded/src/main/java/org/jboss/arquillian/weld/WeldSEContainer.java 2010-01-06 00:12:39 UTC (rev 3901)
+++ arquillian/trunk/container-weld-embedded/src/main/java/org/jboss/arquillian/weld/WeldSEContainer.java 2010-01-06 13:50:08 UTC (rev 3902)
@@ -18,10 +18,8 @@
import java.util.Arrays;
import java.util.Collection;
+import java.util.UUID;
-import javax.enterprise.context.RequestScoped;
-import javax.enterprise.context.SessionScoped;
-
import org.jboss.arquillian.protocol.local.LocalMethodExecutor;
import org.jboss.arquillian.spi.ContainerMethodExecutor;
import org.jboss.arquillian.spi.DeployableContainer;
@@ -31,14 +29,12 @@
import org.jboss.arquillian.spi.TestResult;
import org.jboss.arquillian.weld.shrinkwrap.ShrinkwrapBeanDeploymentArchive;
import org.jboss.shrinkwrap.api.Archive;
-import org.jboss.weld.BeanManagerImpl;
import org.jboss.weld.bootstrap.WeldBootstrap;
import org.jboss.weld.bootstrap.api.Environments;
import org.jboss.weld.bootstrap.api.ServiceRegistry;
import org.jboss.weld.bootstrap.spi.BeanDeploymentArchive;
import org.jboss.weld.bootstrap.spi.Deployment;
-import org.jboss.weld.context.RequestContext;
-import org.jboss.weld.context.SessionContext;
+import org.jboss.weld.context.ContextLifecycle;
import org.jboss.weld.context.api.helpers.ConcurrentHashMapBeanStore;
import org.jboss.weld.manager.api.WeldManager;
@@ -108,12 +104,9 @@
.endInitialization();
WeldManager manager = bootstrap.getManager(mainBeanDepArch);
- // TODO: figure out how to really create the scopes..
- SessionContext sessionContext = new SessionContext();
- sessionContext.setActive(true);
- sessionContext.setBeanStore(new ConcurrentHashMapBeanStore());
- ((BeanManagerImpl)manager).addContext(sessionContext);
+ // start the session lifecycle
+ manager.getServices().get(ContextLifecycle.class).restoreSession(manager.getId(), new ConcurrentHashMapBeanStore());
WELD_MANAGER.set(
new WeldHolder(
@@ -126,21 +119,17 @@
public TestResult invoke(TestMethodExecutor testMethodExecutor)
{
WeldManager manager = WELD_MANAGER.get().getManager();
+ String requestId = UUID.randomUUID().toString();
try
{
- RequestContext requestContext = new RequestContext();
- requestContext.setActive(true);
- requestContext.setBeanStore(new ConcurrentHashMapBeanStore());
- ((BeanManagerImpl)manager).addContext(requestContext);
-
- return super.invoke(testMethodExecutor);
+ // start the request lifecycle
+ manager.getServices().get(ContextLifecycle.class).beginRequest(requestId, new ConcurrentHashMapBeanStore());
+ return super.invoke(testMethodExecutor);
}
finally
{
- RequestContext requestContext = (RequestContext)manager.getContext(RequestScoped.class);
- requestContext.setActive(false);
- requestContext.destroy();
- requestContext.cleanup();
+ // end the request lifecycle
+ manager.getServices().get(ContextLifecycle.class).endRequest(requestId, new ConcurrentHashMapBeanStore());
}
}
};
@@ -155,11 +144,10 @@
WeldHolder holder = WELD_MANAGER.get();
if(holder != null) {
WeldManager manager = holder.getManager();
- SessionContext sessionContext = (SessionContext)manager.getContext(SessionScoped.class);
- sessionContext.setActive(false);
- sessionContext.destroy();
- sessionContext.cleanup();
+ // end the session lifecycle
+ manager.getServices().get(ContextLifecycle.class).endSession(manager.getId(), null);
+
holder.getBootstrap().shutdown();
}
WELD_MANAGER.set(null);
More information about the jboss-svn-commits
mailing list