You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2012/02/05 17:32:36 UTC

svn commit: r1240765 - in /openejb/trunk/colossus/big-cdi-webapp: ./ src/ src/main/ src/main/java/ src/main/java/org/ src/main/java/org/apache/ src/main/java/org/apache/openejb/ src/main/java/org/apache/openejb/colossus/ src/main/java/org/apache/openej...

Author: rmannibucau
Date: Sun Feb  5 16:32:35 2012
New Revision: 1240765

URL: http://svn.apache.org/viewvc?rev=1240765&view=rev
Log:
adding big-cdi-webapp

Added:
    openejb/trunk/colossus/big-cdi-webapp/
    openejb/trunk/colossus/big-cdi-webapp/pom.xml
    openejb/trunk/colossus/big-cdi-webapp/src/
    openejb/trunk/colossus/big-cdi-webapp/src/main/
    openejb/trunk/colossus/big-cdi-webapp/src/main/java/
    openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/
    openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/
    openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/
    openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/
    openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/
    openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/
    openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/EJBWithFoo.java
    openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/IFoo.java
    openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/Main.java
    openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/
    openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/
    openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/beans.xml
    openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/web.xml
    openejb/trunk/colossus/big-cdi-webapp/src/test/
    openejb/trunk/colossus/big-cdi-webapp/src/test/java/
    openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/
    openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/apache/
    openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/apache/openejb/
    openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/apache/openejb/colossus/
    openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/apache/openejb/colossus/generator/
    openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/apache/openejb/colossus/generator/cdi/
    openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/apache/openejb/colossus/generator/cdi/MoveClassesTest.java

Added: openejb/trunk/colossus/big-cdi-webapp/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/colossus/big-cdi-webapp/pom.xml?rev=1240765&view=auto
==============================================================================
--- openejb/trunk/colossus/big-cdi-webapp/pom.xml (added)
+++ openejb/trunk/colossus/big-cdi-webapp/pom.xml Sun Feb  5 16:32:35 2012
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.openejb.colossus</groupId>
+  <artifactId>big-cdi-webapp</artifactId>
+  <version>1.0</version>
+  <packaging>war</packaging>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.openejb</groupId>
+      <artifactId>javaee-api</artifactId>
+      <version>6.0-2</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>4.10</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>commons-io</groupId>
+      <artifactId>commons-io</artifactId>
+      <version>2.0.1</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-war-plugin</artifactId>
+        <version>2.1.1</version>
+        <configuration>
+          <packagingExcludes>WEB-INF/classes/org/apache/openejb/colossus/generator/cdi/Main.class</packagingExcludes>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>exec-maven-plugin</artifactId>
+        <version>1.2.1</version>
+        <executions>
+          <execution>
+            <phase>compile</phase>
+            <goals>
+              <goal>java</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <mainClass>org.apache.openejb.colossus.generator.cdi.Main</mainClass>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+</project>

Added: openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/EJBWithFoo.java
URL: http://svn.apache.org/viewvc/openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/EJBWithFoo.java?rev=1240765&view=auto
==============================================================================
--- openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/EJBWithFoo.java (added)
+++ openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/EJBWithFoo.java Sun Feb  5 16:32:35 2012
@@ -0,0 +1,23 @@
+package org.apache.openejb.colossus.generator.cdi;
+
+import javax.ejb.Lock;
+import javax.ejb.LockType;
+import javax.ejb.Singleton;
+import javax.enterprise.inject.Any;
+import javax.enterprise.inject.Instance;
+import javax.inject.Inject;
+
+@Lock(LockType.READ)
+@Singleton
+public class EJBWithFoo {
+    @Inject @Any
+    private Instance<IFoo> foos;
+
+    public int fooSize() {
+        int i = 0;
+        for (IFoo foo : foos) {
+            i++;
+        }
+        return i;
+    }
+}

Added: openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/IFoo.java
URL: http://svn.apache.org/viewvc/openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/IFoo.java?rev=1240765&view=auto
==============================================================================
--- openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/IFoo.java (added)
+++ openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/IFoo.java Sun Feb  5 16:32:35 2012
@@ -0,0 +1,5 @@
+package org.apache.openejb.colossus.generator.cdi;
+
+public interface IFoo {
+    String foo0();
+}

Added: openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/Main.java
URL: http://svn.apache.org/viewvc/openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/Main.java?rev=1240765&view=auto
==============================================================================
--- openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/Main.java (added)
+++ openejb/trunk/colossus/big-cdi-webapp/src/main/java/org/apache/openejb/colossus/generator/cdi/Main.java Sun Feb  5 16:32:35 2012
@@ -0,0 +1,43 @@
+package org.apache.openejb.colossus.generator.cdi;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+
+public class Main {
+    public static final String BASE_PACKAGE = "generated";
+    public static final String PACKAGE = BASE_PACKAGE + "/foo/bar";
+    public static final String GENERATED_FOLDER = "src/test/java/";
+    public static final String GENERATED_PACKAGE = GENERATED_FOLDER + PACKAGE;
+
+    public static void main(String[] args) {
+        generateEjbs(1000, 200);
+    }
+
+    private static void generateEjbs(int ejbNb, int mtdNb) {
+        final File packageFile = new File(GENERATED_PACKAGE);
+        if (!packageFile.exists()) {
+            packageFile.mkdirs();
+        }
+
+        for (int i = 0; i < ejbNb; i++) {
+            final StringBuilder s = new StringBuilder("package ").append(PACKAGE.replace("/", "."))
+                    .append(";\n\nimport org.apache.openejb.colossus.generator.cdi.IFoo;\n\n")
+                    .append("public class Foo").append(i).append(" implements IFoo {\n");
+            for (int k = 0; k < mtdNb; k++) {
+                s.append("    public String foo").append(k).append("() {\n")
+                        .append("        return getClass().getSimpleName();\n")
+                        .append("    }\n");
+            }
+            s.append("}\n");
+
+            try {
+                FileWriter writer = new FileWriter(GENERATED_PACKAGE + "/Foo" + i + ".java");
+                writer.write(s.toString());
+                writer.close();
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
+}

Added: openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/beans.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/beans.xml?rev=1240765&view=auto
==============================================================================
--- openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/beans.xml (added)
+++ openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/beans.xml Sun Feb  5 16:32:35 2012
@@ -0,0 +1 @@
+<beans />

Added: openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/web.xml?rev=1240765&view=auto
==============================================================================
--- openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/web.xml (added)
+++ openejb/trunk/colossus/big-cdi-webapp/src/main/webapp/WEB-INF/web.xml Sun Feb  5 16:32:35 2012
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+     Licensed to the Apache Software Foundation (ASF) under one or more
+     contributor license agreements.  See the NOTICE file distributed with
+     this work for additional information regarding copyright ownership.
+     The ASF licenses this file to You under the Apache License, Version 2.0
+     (the "License"); you may not use this file except in compliance with
+     the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+  -->
+<web-app xmlns="http://java.sun.com/xml/ns/javaee"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+         metadata-complete="false"
+         version="2.5">
+
+  <display-name>Example</display-name>
+</web-app>
\ No newline at end of file

Added: openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/apache/openejb/colossus/generator/cdi/MoveClassesTest.java
URL: http://svn.apache.org/viewvc/openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/apache/openejb/colossus/generator/cdi/MoveClassesTest.java?rev=1240765&view=auto
==============================================================================
--- openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/apache/openejb/colossus/generator/cdi/MoveClassesTest.java (added)
+++ openejb/trunk/colossus/big-cdi-webapp/src/test/java/org/apache/openejb/colossus/generator/cdi/MoveClassesTest.java Sun Feb  5 16:32:35 2012
@@ -0,0 +1,15 @@
+package org.apache.openejb.colossus.generator.cdi;
+
+import org.apache.commons.io.FileUtils;
+import org.junit.Test;
+
+import java.io.File;
+import java.io.IOException;
+
+public class MoveClassesTest {
+    @Test
+    public void moveGeneratedCompiledClassesToPackageClasses() throws IOException {
+        FileUtils.copyDirectory(new File("target/test-classes/" + Main.BASE_PACKAGE), new File("target/classes/" + Main.BASE_PACKAGE));
+        FileUtils.deleteDirectory(new File("src/test/java/generated"));
+    }
+}