[jboss-cvs] JBossAS SVN: r96264 - in projects/ejb3/trunk/sandbox: .settings and 6 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Nov 11 11:29:10 EST 2009
Author: wolfc
Date: 2009-11-11 11:29:09 -0500 (Wed, 11 Nov 2009)
New Revision: 96264
Modified:
projects/ejb3/trunk/sandbox/.project
projects/ejb3/trunk/sandbox/.settings/org.eclipse.jdt.core.prefs
projects/ejb3/trunk/sandbox/.settings/org.maven.ide.eclipse.prefs
projects/ejb3/trunk/sandbox/pom.xml
projects/ejb3/trunk/sandbox/src/main/java/org/jboss/ejb3/sandbox/interceptorcontainer/InterceptorContainer.java
projects/ejb3/trunk/sandbox/src/main/java/org/jboss/ejb3/sandbox/stateless/StatelessContainer.java
projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/interceptorinterceptor/unit/InterceptorInterceptorUnitTestCase.java
projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/performance/unit/EJBUnitTestCase.java
projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/performance/unit/StressCreator.java
projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/stateless/unit/SimpleStatelessUnitTestCase.java
projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/tx/unit/TxStatelessUnitTestCase.java
Log:
Fix performance tests
Modified: projects/ejb3/trunk/sandbox/.project
===================================================================
--- projects/ejb3/trunk/sandbox/.project 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/.project 2009-11-11 16:29:09 UTC (rev 96264)
@@ -1,23 +1,17 @@
-<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
- <name>jboss-ejb3-sandbox</name>
- <comment>The JBoss EJB 3 Sandbox is a try out area</comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.maven.ide.eclipse.maven2Builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.maven.ide.eclipse.maven2Nature</nature>
- </natures>
-</projectDescription>
+ <name>jboss-ejb3-sandbox</name>
+ <comment>The JBoss EJB 3 Sandbox is a try out area</comment>
+ <projects/>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ </buildCommand>
+ <buildCommand>
+ <name>org.maven.ide.eclipse.maven2Builder</name>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.maven.ide.eclipse.maven2Nature</nature>
+ </natures>
+</projectDescription>
\ No newline at end of file
Modified: projects/ejb3/trunk/sandbox/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- projects/ejb3/trunk/sandbox/.settings/org.eclipse.jdt.core.prefs 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/.settings/org.eclipse.jdt.core.prefs 2009-11-11 16:29:09 UTC (rev 96264)
@@ -1,5 +1,5 @@
-#Mon Oct 08 15:42:55 CEST 2007
+#Mon Jun 16 11:22:19 CEST 2008
+eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.source=1.5
-org.eclipse.jdt.core.compiler.compliance=1.5
Modified: projects/ejb3/trunk/sandbox/.settings/org.maven.ide.eclipse.prefs
===================================================================
--- projects/ejb3/trunk/sandbox/.settings/org.maven.ide.eclipse.prefs 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/.settings/org.maven.ide.eclipse.prefs 2009-11-11 16:29:09 UTC (rev 96264)
@@ -1,9 +1,10 @@
-#Fri May 09 17:45:27 CEST 2008
-activeProfiles=
+#Thu Mar 19 13:04:57 CET 2009
+activeProfiles=eclipse
eclipse.preferences.version=1
filterResources=false
+fullBuildGoals=
includeModules=false
-resolveWorkspaceProjects=true
-resourceFilterGoals=process-resources resources\:testResources
+resolveWorkspaceProjects=false
+resourceFilterGoals=
useMavenFolders=false
version=1
Modified: projects/ejb3/trunk/sandbox/pom.xml
===================================================================
--- projects/ejb3/trunk/sandbox/pom.xml 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/pom.xml 2009-11-11 16:29:09 UTC (rev 96264)
@@ -6,7 +6,7 @@
<parent>
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-build</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.3-SNAPSHOT</version>
<relativePath>../build/pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
@@ -21,7 +21,13 @@
<dependency>
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-interceptors</artifactId>
- <version>0.12.0</version>
+ <version>1.0.1</version>
+ <exclusions>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.jboss.ejb3</groupId>
@@ -30,11 +36,13 @@
</dependency>
<!-- external -->
+ <!--
<dependency>
<groupId>apache-log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
+ -->
<dependency>
<groupId>org.jboss.logging</groupId>
<artifactId>jboss-logging-log4j</artifactId>
Modified: projects/ejb3/trunk/sandbox/src/main/java/org/jboss/ejb3/sandbox/interceptorcontainer/InterceptorContainer.java
===================================================================
--- projects/ejb3/trunk/sandbox/src/main/java/org/jboss/ejb3/sandbox/interceptorcontainer/InterceptorContainer.java 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/src/main/java/org/jboss/ejb3/sandbox/interceptorcontainer/InterceptorContainer.java 2009-11-11 16:29:09 UTC (rev 96264)
@@ -25,11 +25,12 @@
import java.lang.reflect.AnnotatedElement;
import java.lang.reflect.Method;
+import javax.annotation.Resource;
import javax.interceptor.Interceptors;
import org.jboss.aop.Advised;
import org.jboss.ejb3.interceptors.ManagedObject;
-import org.jboss.ejb3.interceptors.direct.DirectContainer;
+import org.jboss.ejb3.interceptors.container.BeanContext;
import org.jboss.ejb3.interceptors.direct.IndirectContainer;
import org.jboss.ejb3.sandbox.interceptorcontainer.impl.ContainersInterceptorsInterceptor;
@@ -38,16 +39,19 @@
* on a class.
*
* @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
- * @version $Revision: $
+ * @version $Revision$
*/
@Interceptors(ContainersInterceptorsInterceptor.class)
@ManagedObject
-public class InterceptorContainer implements AnnotatedElement, IndirectContainer<InterceptorContainer, DirectContainer<InterceptorContainer>>
+public class InterceptorContainer implements AnnotatedElement, IndirectContainer<InterceptorContainer, InterceptorContainerContainer>
{
private Class<?> beanClass;
private Object[] interceptors;
- private DirectContainer<InterceptorContainer> directContainer;
+ private InterceptorContainerContainer directContainer;
+ // the bean context of this interceptor container instance
+ private BeanContext<InterceptorContainer> beanContext;
+
private static final Method INVOKE_METHOD;
static
@@ -66,6 +70,12 @@
}
}
+ public InterceptorContainer()
+ {
+ super();
+ }
+
+ // this is not in EJB style
public InterceptorContainer(Class<?> beanClass) throws Exception
{
assert beanClass != null;
@@ -92,6 +102,12 @@
return beanClass;
}
+ @Resource(name="beanClass")
+ public void setBeanClass(Class<?> beanClass)
+ {
+ this.beanClass = beanClass;
+ }
+
public Object invoke(Method method, Object[] args) throws Throwable
{
//return new BeanClassInvocationContext(AroundInvoke.class, method, args).proceed();
@@ -103,7 +119,7 @@
{
// I'm indirectly advised, let's delegate to the direct container
Object arguments[] = { method, args };
- return directContainer.invokeIndirect(this, INVOKE_METHOD, arguments);
+ return directContainer.invokeIndirect(beanContext, INVOKE_METHOD, arguments);
}
else
{
@@ -113,8 +129,14 @@
}
}
- public void setDirectContainer(DirectContainer<InterceptorContainer> container)
+ public void setBeanContext(BeanContext<InterceptorContainer> beanContext)
{
+ assert beanContext.getInstance() == this;
+ this.beanContext = beanContext;
+ }
+
+ public void setDirectContainer(InterceptorContainerContainer container)
+ {
assert container != null : "directContainer is null";
this.directContainer = container;
}
Modified: projects/ejb3/trunk/sandbox/src/main/java/org/jboss/ejb3/sandbox/stateless/StatelessContainer.java
===================================================================
--- projects/ejb3/trunk/sandbox/src/main/java/org/jboss/ejb3/sandbox/stateless/StatelessContainer.java 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/src/main/java/org/jboss/ejb3/sandbox/stateless/StatelessContainer.java 2009-11-11 16:29:09 UTC (rev 96264)
@@ -30,16 +30,16 @@
* Comment
*
* @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
- * @version $Revision: $
+ * @version $Revision$
*/
public class StatelessContainer extends InterceptorContainer
{
private Pool<StatelessBeanContext> pool;
- public StatelessContainer(Class<?> beanClass) throws Exception
- {
- super(beanClass);
- }
+// public StatelessContainer(Class<?> beanClass) throws Exception
+// {
+// super(beanClass);
+// }
public Object invoke(Method method, Object args[])
{
Modified: projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/interceptorinterceptor/unit/InterceptorInterceptorUnitTestCase.java
===================================================================
--- projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/interceptorinterceptor/unit/InterceptorInterceptorUnitTestCase.java 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/interceptorinterceptor/unit/InterceptorInterceptorUnitTestCase.java 2009-11-11 16:29:09 UTC (rev 96264)
@@ -26,6 +26,7 @@
import junit.framework.TestCase;
import org.jboss.aop.AspectXmlLoader;
+import org.jboss.ejb3.interceptors.container.BeanContext;
import org.jboss.ejb3.interceptors.direct.DirectContainer;
import org.jboss.ejb3.test.sandbox.interceptorinterceptor.InterceptorInterceptorBean;
import org.jboss.logging.Logger;
@@ -34,7 +35,7 @@
* Comment
*
* @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
- * @version $Revision: $
+ * @version $Revision$
*/
public class InterceptorInterceptorUnitTestCase extends TestCase
{
@@ -51,6 +52,6 @@
AspectXmlLoader.deployXML(url);
DirectContainer<InterceptorInterceptorBean> container = new DirectContainer<InterceptorInterceptorBean>("InterceptorInterceptorBean", "InterceptorContainer", InterceptorInterceptorBean.class);
- InterceptorInterceptorBean instance = container.construct();
+ BeanContext<InterceptorInterceptorBean> instance = container.construct();
}
}
Modified: projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/performance/unit/EJBUnitTestCase.java
===================================================================
--- projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/performance/unit/EJBUnitTestCase.java 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/performance/unit/EJBUnitTestCase.java 2009-11-11 16:29:09 UTC (rev 96264)
@@ -29,19 +29,23 @@
import junit.framework.TestCase;
import org.jboss.aop.AspectXmlLoader;
-import org.jboss.ejb3.interceptors.direct.DirectContainer;
+import org.jboss.ejb3.interceptors.container.BeanContext;
+import org.jboss.ejb3.interceptors.container.BeanContextFactory;
+import org.jboss.ejb3.sandbox.interceptorcontainer.InjectingBeanContextFactory;
import org.jboss.ejb3.sandbox.interceptorcontainer.InterceptorContainer;
+import org.jboss.ejb3.sandbox.interceptorcontainer.InterceptorContainerContainer;
import org.jboss.ejb3.sandbox.stateless.StatelessInterceptor;
import org.jboss.ejb3.test.sandbox.performance.Calculator;
import org.jboss.ejb3.test.sandbox.performance.CalculatorBean;
import org.jboss.logging.Logger;
+import org.jboss.util.naming.Util;
import org.jnp.server.SingletonNamingServer;
/**
* Comment
*
* @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
- * @version $Revision: $
+ * @version $Revision$
*/
public class EJBUnitTestCase extends TestCase
{
@@ -56,17 +60,26 @@
log.info("deploying AOP from " + url);
AspectXmlLoader.deployXML(url);
- DirectContainer<InterceptorContainer> interceptorContainerContainer = new DirectContainer<InterceptorContainer>("FIXME", "InterceptorContainer", InterceptorContainer.class);
- Object args[] = { CalculatorBean.class };
- Class<?> parameterTypes[] = { Class.class };
- InterceptorContainer interceptorContainer = interceptorContainerContainer.construct(args, parameterTypes);
-
InitialContext ctx = new InitialContext();
+ Util.bind(ctx, "java:comp/env/beanClass", CalculatorBean.class);
+
+// DirectContainer<InterceptorContainer> interceptorContainerContainer = new DirectContainer<InterceptorContainer>("FIXME", "InterceptorContainer", InterceptorContainer.class);
+ final InterceptorContainerContainer interceptorContainerContainer = new InterceptorContainerContainer("FIXME", "InterceptorContainer", InterceptorContainer.class);
+ // With EJBTHREE-1246 construction with arguments no longer works
+ Class<? extends BeanContextFactory<InterceptorContainer, InterceptorContainerContainer>> beanContextFactoryClass = (Class<? extends BeanContextFactory<InterceptorContainer, InterceptorContainerContainer>>) InjectingBeanContextFactory.class;
+ interceptorContainerContainer.setBeanContextFactoryClass(beanContextFactoryClass);
+ final BeanContext<InterceptorContainer> interceptorContainer = interceptorContainerContainer.construct();
+ // FIXME: bug in AbstractDirectContainer.construct
+ interceptorContainer.getInstance().setDirectContainer(interceptorContainerContainer);
+ interceptorContainer.getInstance().setBeanContext(interceptorContainer);
+
Calculator bean = (Calculator) ctx.lookup("CalculatorBean/local");
assertNotNull(bean);
+ System.out.println(bean.calculatePi(10));
+
System.out.println("BLACKBOX MEASURED STATS:");
StressCreator.createStress(bean);
//System.err.println(bean.calculatePi(10));
Modified: projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/performance/unit/StressCreator.java
===================================================================
--- projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/performance/unit/StressCreator.java 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/performance/unit/StressCreator.java 2009-11-11 16:29:09 UTC (rev 96264)
@@ -63,7 +63,7 @@
start = System.currentTimeMillis();
try
{
- return calculator.calculatePi(8000);
+ return calculator.calculatePi(10000);
}
finally
{
@@ -76,8 +76,8 @@
{
ExecutorService executor = new ThreadPoolExecutor(0, Integer.MAX_VALUE, Long.MAX_VALUE, NANOSECONDS,
new SynchronousQueue<Runnable>());
- Task tasks[] = new Task[100];
- Future<BigDecimal> results[] = new Future[100];
+ Task tasks[] = new Task[75];
+ Future<BigDecimal> results[] = new Future[tasks.length];
long start = System.currentTimeMillis();
for (int i = 0; i < results.length; i++)
{
@@ -119,10 +119,11 @@
maxWaitQueue = Math.max(maxWaitQueue, waitQueue);
maxExecution = Math.max(maxExecution, execution);
}
+
+ double t = tasks.length;
+ System.out.println("Average wait queue " + ((totalWaitQueue / t) / 1000.0));
+ System.out.println("Average execution " + ((totalExecution / t) / 1000.0));
- System.out.println("Average wait queue " + ((totalWaitQueue / 100.0) / 1000.0));
- System.out.println("Average execution " + ((totalExecution / 100.0) / 1000.0));
-
System.out.println("Max wait queue " + (maxWaitQueue / 1000.0));
System.out.println("Max execution " + (maxExecution / 1000.0));
Modified: projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/stateless/unit/SimpleStatelessUnitTestCase.java
===================================================================
--- projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/stateless/unit/SimpleStatelessUnitTestCase.java 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/stateless/unit/SimpleStatelessUnitTestCase.java 2009-11-11 16:29:09 UTC (rev 96264)
@@ -28,6 +28,7 @@
import junit.framework.TestCase;
import org.jboss.aop.AspectXmlLoader;
+import org.jboss.ejb3.interceptors.container.BeanContext;
import org.jboss.ejb3.interceptors.direct.DirectContainer;
import org.jboss.ejb3.sandbox.interceptorcontainer.InterceptorContainer;
import org.jboss.ejb3.test.sandbox.stateless.SimpleStatelessBean;
@@ -39,7 +40,7 @@
* Comment
*
* @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
- * @version $Revision: $
+ * @version $Revision$
*/
public class SimpleStatelessUnitTestCase extends TestCase
{
@@ -59,7 +60,7 @@
DirectContainer<InterceptorContainer> interceptorContainerContainer = new DirectContainer<InterceptorContainer>("FIXME", "InterceptorContainer", InterceptorContainer.class);
Object args[] = { SimpleStatelessBean.class };
Class<?> parameterTypes[] = { Class.class };
- InterceptorContainer interceptorContainer = interceptorContainerContainer.construct(args, parameterTypes);
+ BeanContext<InterceptorContainer> interceptorContainer = interceptorContainerContainer.construct(args, parameterTypes);
InitialContext ctx = new InitialContext();
Modified: projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/tx/unit/TxStatelessUnitTestCase.java
===================================================================
--- projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/tx/unit/TxStatelessUnitTestCase.java 2009-11-11 15:59:11 UTC (rev 96263)
+++ projects/ejb3/trunk/sandbox/src/test/java/org/jboss/ejb3/test/sandbox/tx/unit/TxStatelessUnitTestCase.java 2009-11-11 16:29:09 UTC (rev 96264)
@@ -29,6 +29,7 @@
import junit.framework.TestCase;
import org.jboss.aop.AspectXmlLoader;
+import org.jboss.ejb3.interceptors.container.BeanContext;
import org.jboss.ejb3.interceptors.direct.DirectContainer;
import org.jboss.ejb3.sandbox.interceptorcontainer.InterceptorContainer;
import org.jboss.ejb3.test.sandbox.tx.TxStatelessBean;
@@ -41,7 +42,7 @@
* Comment
*
* @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
- * @version $Revision: $
+ * @version $Revision$
*/
public class TxStatelessUnitTestCase extends TestCase
{
@@ -69,7 +70,7 @@
DirectContainer<InterceptorContainer> interceptorContainerContainer = new DirectContainer<InterceptorContainer>("FIXME", "InterceptorContainer", InterceptorContainer.class);
Object args[] = { TxStatelessBean.class };
Class<?> parameterTypes[] = { Class.class };
- InterceptorContainer interceptorContainer = interceptorContainerContainer.construct(args, parameterTypes);
+ BeanContext<InterceptorContainer> interceptorContainer = interceptorContainerContainer.construct(args, parameterTypes);
TxStatelessLocal bean = (TxStatelessLocal) ctx.lookup("TxStatelessBean/local");
assertNotNull(bean);
More information about the jboss-cvs-commits
mailing list