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 2011/12/28 09:52:12 UTC

svn commit: r1225145 - in /openejb/trunk/openejb/arquillian-tomee: arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/ arquillian-tomee-remote/ arquillian-tomee-remote/src/main/java/org/apache/openejb/arquillian/remote/ arquilli...

Author: rmannibucau
Date: Wed Dec 28 08:52:12 2011
New Revision: 1225145

URL: http://svn.apache.org/viewvc?rev=1225145&view=rev
Log:
speeding up maven cache resolution and using a random port for arquillian remote tests

Modified:
    openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/MavenCache.java
    openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/pom.xml
    openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/main/java/org/apache/openejb/arquillian/remote/RemoteTomEEContainer.java
    openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/TomEEContainerTest.java
    openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/session/SessionScopeTest.java
    openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/resources/arquillian.xml

Modified: openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/MavenCache.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/MavenCache.java?rev=1225145&r1=1225144&r2=1225145&view=diff
==============================================================================
--- openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/MavenCache.java (original)
+++ openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/MavenCache.java Wed Dec 28 08:52:12 2011
@@ -30,6 +30,7 @@ import org.sonatype.aether.repository.Lo
 import org.sonatype.aether.resolution.ArtifactRequest;
 import org.sonatype.aether.resolution.ArtifactResolutionException;
 import org.sonatype.aether.resolution.ArtifactResult;
+import org.sonatype.aether.util.artifact.ArtifactProperties;
 import org.sonatype.aether.util.artifact.DefaultArtifact;
 
 import java.io.File;
@@ -37,6 +38,7 @@ import java.io.FileOutputStream;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.net.URL;
+import java.util.HashMap;
 
 /**
  * This class resolves artifacts in Maven. If an artifact (such as the Tomcat
@@ -108,8 +110,11 @@ public class MavenCache {
 		return artifact;
 	}
 
-	public Artifact getArtifact(String coords) {
-		return new DefaultArtifact(coords);
+	public Artifact getArtifact(final String coords) {
+        final Artifact artifact = new DefaultArtifact(coords); // just for the parsing
+		return new DefaultArtifact(coords, new HashMap<String, String>() {{ // try to get faster
+            put(ArtifactProperties.LOCAL_PATH, new File(session.getLocalRepository().getBasedir(), session.getLocalRepositoryManager().getPathForLocalArtifact(artifact)).getAbsolutePath());
+        }});
 	}
 
 	public Artifact resolve(Artifact artifact) throws ArtifactResolutionException {

Modified: openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/pom.xml?rev=1225145&r1=1225144&r2=1225145&view=diff
==============================================================================
--- openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/pom.xml (original)
+++ openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/pom.xml Wed Dec 28 08:52:12 2011
@@ -348,6 +348,26 @@
   <build>
     <plugins>
       <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>build-helper-maven-plugin</artifactId>
+        <version>1.7</version>
+        <executions>
+          <execution>
+            <id>reserve-network-port</id>
+            <phase>pre-integration-test</phase>
+            <goals>
+              <goal>reserve-network-port</goal>
+            </goals>
+            <configuration>
+              <portNames>
+                <portName>tomee.http.port</portName>
+                <portName>tomee.shutdown.port</portName>
+              </portNames>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-dependency-plugin</artifactId>
         <version>2.1</version>

Modified: openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/main/java/org/apache/openejb/arquillian/remote/RemoteTomEEContainer.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/main/java/org/apache/openejb/arquillian/remote/RemoteTomEEContainer.java?rev=1225145&r1=1225144&r2=1225145&view=diff
==============================================================================
--- openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/main/java/org/apache/openejb/arquillian/remote/RemoteTomEEContainer.java (original)
+++ openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/main/java/org/apache/openejb/arquillian/remote/RemoteTomEEContainer.java Wed Dec 28 08:52:12 2011
@@ -51,6 +51,13 @@ public class RemoteTomEEContainer extend
     private boolean needsStart = false;
 
     public void start() throws LifecycleException {
+        if (System.getProperty("tomee.http.port") != null) {
+            configuration.setHttpPort(Integer.parseInt(System.getProperty("tomee.http.port")));
+        }
+        if (System.getProperty("tomee.shutdown.port") != null) {
+            configuration.setStopPort(Integer.parseInt(System.getProperty("tomee.shutdown.port")));
+        }
+
         // see if TomEE is already running by checking the http port
         try {
             connect(configuration.getHttpPort());
@@ -105,11 +112,11 @@ public class RemoteTomEEContainer extend
 
             System.setProperty("tomee.http.port", String.valueOf(configuration.getHttpPort()));
             System.setProperty("tomee.shutdown.port", String.valueOf(configuration.getStopPort()));
-            System.setProperty("java.naming.provider.url", "http://localhost:" + configuration.getHttpPort() + "/openejb/ejb");
+            System.setProperty("java.naming.provider.url", "http://localhost:" +  configuration.getHttpPort() + "/openejb/ejb");
             System.setProperty("connect.tries", "90");
             System.setProperty("server.http.port", String.valueOf(configuration.getHttpPort()));
             System.setProperty("server.shutdown.port", String.valueOf(configuration.getStopPort()));
-            System.setProperty("java.opts", "-Xmx512m -Xms256m -XX:PermSize=64m -XX:MaxPermSize=256m -XX:ReservedCodeCacheSize=64m");
+            System.setProperty("java.opts", "-Xmx512m -Xms256m -XX:PermSize=64m -XX:MaxPermSize=256m -XX:ReservedCodeCacheSize=64m -Dtomee.http.port=" + configuration.getHttpPort());
             System.setProperty("openejb.home", openejbHome.getAbsolutePath());
 
             container = new RemoteServer();

Modified: openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/TomEEContainerTest.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/TomEEContainerTest.java?rev=1225145&r1=1225144&r2=1225145&view=diff
==============================================================================
--- openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/TomEEContainerTest.java (original)
+++ openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/TomEEContainerTest.java Wed Dec 28 08:52:12 2011
@@ -53,7 +53,7 @@ public class TomEEContainerTest {
 
     @Test
     public void testShouldBeAbleToAccessServletAndEjb() throws Exception {
-        InputStream is = new URL("http://localhost:9080/test/Test").openStream();
+        InputStream is = new URL("http://localhost:" + System.getProperty("tomee.http.port") + "/test/Test").openStream();
         ByteArrayOutputStream os = new ByteArrayOutputStream();
 
         int bytesRead = -1;

Modified: openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/session/SessionScopeTest.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/session/SessionScopeTest.java?rev=1225145&r1=1225144&r2=1225145&view=diff
==============================================================================
--- openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/session/SessionScopeTest.java (original)
+++ openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/session/SessionScopeTest.java Wed Dec 28 08:52:12 2011
@@ -27,7 +27,7 @@ import static org.junit.Assert.assertNot
 
 @RunWith(Arquillian.class)
 public class SessionScopeTest {
-    public static final String TEST_SESSION_URL = "http://127.0.0.1:9080/test/session";
+    public static final String TEST_SESSION_URL = "http://127.0.0.1:" + System.getProperty("tomee.http.port") + "/test/session";
 
     @Deployment
     public static WebArchive createDeployment() {

Modified: openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/resources/arquillian.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/resources/arquillian.xml?rev=1225145&r1=1225144&r2=1225145&view=diff
==============================================================================
--- openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/resources/arquillian.xml (original)
+++ openejb/trunk/openejb/arquillian-tomee/arquillian-tomee-remote/src/test/resources/arquillian.xml Wed Dec 28 08:52:12 2011
@@ -23,10 +23,10 @@
        <container qualifier="tomee" default="true">
            <configuration>
            	   <property name="dir">/tmp/arquillian-apache-tomee</property>
-               <property name="httpPort">9080</property>
-               <property name="stopPort">9005</property>
+               <property name="httpPort">10080</property>
+               <property name="stopPort">10005</property>
                <property name="tomcatVersion"></property>
                <property name="openejbVersion">1.0.0-beta-2-SNAPSHOT</property>
            </configuration>
        </container>
-</arquillian>
\ No newline at end of file
+</arquillian>