You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2007/08/30 01:42:13 UTC
svn commit: r570984 -
/openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessContainerTest.java
Author: dblevins
Date: Wed Aug 29 16:42:12 2007
New Revision: 570984
URL: http://svn.apache.org/viewvc?rev=570984&view=rev
Log:
cleaned up to use configureApplication and createApplication
Modified:
openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessContainerTest.java
Modified: openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessContainerTest.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessContainerTest.java?rev=570984&r1=570983&r2=570984&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessContainerTest.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessContainerTest.java Wed Aug 29 16:42:12 2007
@@ -18,101 +18,93 @@
package org.apache.openejb.core.stateless;
import junit.framework.TestCase;
-import org.apache.openejb.DeploymentInfo;
-import org.apache.openejb.OpenEJBException;
-import org.apache.openejb.spi.SecurityService;
-import org.apache.openejb.loader.SystemInstance;
-import org.apache.openejb.util.proxy.ProxyManager;
-import org.apache.openejb.util.proxy.Jdk13ProxyFactory;
-import org.apache.openejb.core.CoreDeploymentInfo;
-import org.apache.openejb.config.EjbModule;
-import org.apache.openejb.config.EjbJarInfoBuilder;
-import org.apache.openejb.config.JndiEncInfoBuilder;
-import org.apache.openejb.jee.oejb3.EjbDeployment;
-import org.apache.openejb.jee.oejb3.OpenejbJar;
-import org.apache.openejb.assembler.classic.EjbJarBuilder;
-import org.apache.openejb.assembler.classic.EjbJarInfo;
+import org.apache.openejb.assembler.classic.Assembler;
+import org.apache.openejb.assembler.classic.ConnectionManagerInfo;
+import org.apache.openejb.assembler.classic.ProxyFactoryInfo;
+import org.apache.openejb.assembler.classic.SecurityServiceInfo;
+import org.apache.openejb.assembler.classic.StatelessSessionContainerInfo;
+import org.apache.openejb.assembler.classic.TransactionServiceInfo;
+import org.apache.openejb.config.ConfigurationFactory;
+import org.apache.openejb.core.ivm.naming.InitContextFactory;
import org.apache.openejb.jee.EjbJar;
import org.apache.openejb.jee.StatelessBean;
-import org.apache.openejb.ri.sp.PseudoSecurityService;
-import org.apache.openejb.ri.sp.PseudoTransactionService;
import javax.ejb.SessionContext;
+import javax.naming.InitialContext;
import java.util.Arrays;
-import java.util.HashMap;
import java.util.List;
import java.util.Stack;
-import java.util.Properties;
/**
* @version $Revision$ $Date$
*/
public class StatelessContainerTest extends TestCase {
- private StatelessContainer container;
- private DeploymentInfo deploymentInfo;
public void testPojoStyleBean() throws Exception {
+ List expected = Arrays.asList(Lifecycle.values());
+ InitialContext ctx = new InitialContext();
- Object result = container.invoke("widget", Widget.class, Widget.class.getMethod("getLifecycle"), new Object[]{}, null);
- assertTrue("instance of Stack", result instanceof Stack);
+ {
+ WidgetBean.lifecycle.clear();
- Stack<Lifecycle> actual = (Stack<Lifecycle>) result;
+ Object object = ctx.lookup("WidgetBeanBusinessLocal");
- List expected = Arrays.asList(Lifecycle.values());
+ assertTrue("instanceof widget", object instanceof Widget);
- assertEquals(join("\n", expected), join("\n", actual));
- }
+ Widget widget = (Widget) object;
- public void testBusinessLocalInterface() throws Exception {
+ // Do a business method...
+ Stack<Lifecycle> lifecycle = widget.getLifecycle();
+ assertNotNull("lifecycle", lifecycle);
+ assertSame("lifecycle", lifecycle, WidgetBean.lifecycle);
- CoreDeploymentInfo coreDeploymentInfo = (CoreDeploymentInfo) deploymentInfo;
- DeploymentInfo.BusinessLocalHome businessLocalHome = coreDeploymentInfo.getBusinessLocalHome();
- assertNotNull("businessLocalHome", businessLocalHome);
+ // Check the lifecycle of the bean
+ assertEquals(join("\n", expected), join("\n", lifecycle));
+ }
+ {
- Object object = businessLocalHome.create();
- assertNotNull("businessLocalHome.create()", businessLocalHome);
+ WidgetBean.lifecycle.clear();
- assertTrue("instanceof widget", object instanceof Widget);
+ Object object = ctx.lookup("WidgetBeanBusinessRemote");
- Widget widget = (Widget) object;
+ assertTrue("instanceof widget", object instanceof RemoteWidget);
- // Do a business method...
- Stack<Lifecycle> lifecycle = widget.getLifecycle();
- assertNotNull("lifecycle",lifecycle);
+ RemoteWidget remoteWidget = (RemoteWidget) object;
- // Check the lifecycle of the bean
- List expected = Arrays.asList(Lifecycle.values());
+ // Do a business method...
+ Stack<Lifecycle> lifecycle = remoteWidget.getLifecycle();
+ assertNotNull("lifecycle", lifecycle);
+ assertNotSame("lifecycle", lifecycle, WidgetBean.lifecycle);
- assertEquals(join("\n", expected) , join("\n", lifecycle));
+ // Check the lifecycle of the bean
+ assertEquals(join("\n", expected), join("\n", lifecycle));
+ }
}
- public void testBusinessRemoteInterface() throws Exception {
+ protected void setUp() throws Exception {
+ super.setUp();
- CoreDeploymentInfo coreDeploymentInfo = (CoreDeploymentInfo) deploymentInfo;
- DeploymentInfo.BusinessRemoteHome businessRemoteHome = coreDeploymentInfo.getBusinessRemoteHome();
- assertNotNull("businessRemoteHome", businessRemoteHome);
+ System.setProperty(javax.naming.Context.INITIAL_CONTEXT_FACTORY, InitContextFactory.class.getName());
- Object object = businessRemoteHome.create();
- assertNotNull("businessRemoteHome.create()", businessRemoteHome);
+ ConfigurationFactory config = new ConfigurationFactory();
+ Assembler assembler = new Assembler();
- assertTrue("instanceof widget", object instanceof RemoteWidget);
+ assembler.createProxyFactory(config.configureService(ProxyFactoryInfo.class));
+ assembler.createTransactionManager(config.configureService(TransactionServiceInfo.class));
+ assembler.createSecurityService(config.configureService(SecurityServiceInfo.class));
- RemoteWidget widget = (RemoteWidget) object;
+ assembler.createConnectionManager(config.configureService(ConnectionManagerInfo.class));
- // Do a business method...
- Stack<Lifecycle> lifecycle = widget.getLifecycle();
- assertNotNull("lifecycle",lifecycle);
- assertNotSame("is copy", lifecycle, WidgetBean.lifecycle);
+ // containers
+ StatelessSessionContainerInfo statelessContainerInfo = config.configureService(StatelessSessionContainerInfo.class);
+ statelessContainerInfo.properties.setProperty("TimeOut", "10");
+ statelessContainerInfo.properties.setProperty("PoolSize", "0");
+ statelessContainerInfo.properties.setProperty("StrictPooling", "false");
+ assembler.createContainer(statelessContainerInfo);
- // Check the lifecycle of the bean
- List expected = Arrays.asList(Lifecycle.values());
+ // Setup the descriptor information
- assertEquals(join("\n", expected) , join("\n", lifecycle));
- }
-
- protected void setUp() throws Exception {
- super.setUp();
- StatelessBean bean = new StatelessBean("widget", WidgetBean.class.getName());
+ StatelessBean bean = new StatelessBean(WidgetBean.class);
bean.addBusinessLocal(Widget.class.getName());
bean.addBusinessRemote(RemoteWidget.class.getName());
bean.addPostConstruct("init");
@@ -121,25 +113,8 @@
EjbJar ejbJar = new EjbJar();
ejbJar.addEnterpriseBean(bean);
- OpenejbJar openejbJar = new OpenejbJar();
- openejbJar.addEjbDeployment(new EjbDeployment("Stateless Container", "widget", "widget"));
-
- EjbModule jar = new EjbModule(this.getClass().getClassLoader(), "", ejbJar, openejbJar);
-
- PseudoTransactionService transactionManager = new PseudoTransactionService();
- PseudoSecurityService securityService = new PseudoSecurityService();
- SystemInstance.get().setComponent(SecurityService.class, securityService);
- container = new StatelessContainer("Stateless Container", transactionManager, securityService, 10, 0, false);
- Properties props = new Properties();
- props.put(container.getContainerID(), container);
+ assembler.createApplication(config.configureApplication(ejbJar));
- HashMap<String, DeploymentInfo> ejbs = build(props, jar);
- deploymentInfo = ejbs.get("widget");
-
- ProxyManager.registerFactory("ivm_server", new Jdk13ProxyFactory());
- ProxyManager.setDefaultFactory("ivm_server");
-
- WidgetBean.lifecycle.clear();
}
private static String join(String delimeter, List items) {
@@ -150,19 +125,6 @@
return sb.toString();
}
- private HashMap<String, DeploymentInfo> build(Properties props, EjbModule ejbModule) throws OpenEJBException {
- EjbJarInfoBuilder infoBuilder = new EjbJarInfoBuilder();
- EjbJarInfo jarInfo = infoBuilder.buildInfo(ejbModule);
-
- // Process JNDI refs
- JndiEncInfoBuilder.initJndiReferences(ejbModule, jarInfo);
-
- EjbJarBuilder builder = new EjbJarBuilder(props, this.getClass().getClassLoader());
- HashMap<String, DeploymentInfo> ejbs = builder.build(jarInfo,null);
- builder.deploy(ejbs);
- return ejbs;
- }
-
public static interface Widget {
Stack<Lifecycle> getLifecycle();
}
@@ -172,7 +134,7 @@
}
public static enum Lifecycle {
- CONSTRUCTOR, POST_CONSTRUCT, BUSINESS_METHOD, PRE_DESTROY
+ CONSTRUCTOR, INJECTION, POST_CONSTRUCT, BUSINESS_METHOD, PRE_DESTROY
}
public static class WidgetBean implements Widget, RemoteWidget {
@@ -184,7 +146,7 @@
}
public void setSessionContext(SessionContext sessionContext) {
- //lifecycle.push(Lifecycle.INJECTION);
+ lifecycle.push(Lifecycle.INJECTION);
}
public Stack<Lifecycle> getLifecycle() {