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/09/13 17:15:57 UTC

svn commit: r1384364 - in /openejb/trunk/openejb: arquillian/arquillian-tomee-common/ arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/ maven/tomee-maven-plugin/ maven/tomee-maven-plugin/src/main/java/org/apache/ope...

Author: rmannibucau
Date: Thu Sep 13 15:15:55 2012
New Revision: 1384364

URL: http://svn.apache.org/viewvc?rev=1384364&view=rev
Log:
in tomee maven plugin reading value to replace in server.xml before replacing it to be sure of what we do

Added:
    openejb/trunk/openejb/tomee/tomee-util/
    openejb/trunk/openejb/tomee/tomee-util/pom.xml
    openejb/trunk/openejb/tomee/tomee-util/src/
    openejb/trunk/openejb/tomee/tomee-util/src/main/
    openejb/trunk/openejb/tomee/tomee-util/src/main/java/
    openejb/trunk/openejb/tomee/tomee-util/src/main/java/org/
    openejb/trunk/openejb/tomee/tomee-util/src/main/java/org/apache/
    openejb/trunk/openejb/tomee/tomee-util/src/main/java/org/apache/tomee/
    openejb/trunk/openejb/tomee/tomee-util/src/main/java/org/apache/tomee/util/
    openejb/trunk/openejb/tomee/tomee-util/src/main/java/org/apache/tomee/util/QuickServerXmlParser.java
      - copied, changed from r1382650, openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/QuickServerXmlParser.java
Removed:
    openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/QuickServerXmlParser.java
Modified:
    openejb/trunk/openejb/arquillian/arquillian-tomee-common/pom.xml
    openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/Setup.java
    openejb/trunk/openejb/maven/tomee-maven-plugin/pom.xml
    openejb/trunk/openejb/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java
    openejb/trunk/openejb/tomee/pom.xml

Modified: openejb/trunk/openejb/arquillian/arquillian-tomee-common/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/arquillian/arquillian-tomee-common/pom.xml?rev=1384364&r1=1384363&r2=1384364&view=diff
==============================================================================
--- openejb/trunk/openejb/arquillian/arquillian-tomee-common/pom.xml (original)
+++ openejb/trunk/openejb/arquillian/arquillian-tomee-common/pom.xml Thu Sep 13 15:15:55 2012
@@ -59,6 +59,12 @@
 
     <dependency>
       <groupId>org.apache.openejb</groupId>
+      <artifactId>tomee-util</artifactId>
+      <version>${tomee.version}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.openejb</groupId>
       <artifactId>openejb-core</artifactId>
       <version>${openejb.version}</version>
       <type>jar</type>

Modified: openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/Setup.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/Setup.java?rev=1384364&r1=1384363&r2=1384364&view=diff
==============================================================================
--- openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/Setup.java (original)
+++ openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/Setup.java Thu Sep 13 15:15:55 2012
@@ -19,6 +19,7 @@ package org.apache.openejb.arquillian.co
 import org.apache.openejb.loader.ProvisioningUtil;
 import org.apache.openejb.loader.SystemInstance;
 import org.apache.openejb.util.JarExtractor;
+import org.apache.tomee.util.QuickServerXmlParser;
 import org.jboss.arquillian.container.spi.client.container.LifecycleException;
 
 import java.io.BufferedReader;

Modified: openejb/trunk/openejb/maven/tomee-maven-plugin/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/maven/tomee-maven-plugin/pom.xml?rev=1384364&r1=1384363&r2=1384364&view=diff
==============================================================================
--- openejb/trunk/openejb/maven/tomee-maven-plugin/pom.xml (original)
+++ openejb/trunk/openejb/maven/tomee-maven-plugin/pom.xml Thu Sep 13 15:15:55 2012
@@ -48,6 +48,11 @@
       <groupId>org.apache.openejb</groupId>
       <artifactId>openejb-client</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.apache.openejb</groupId>
+      <artifactId>tomee-util</artifactId>
+      <version>${tomee.version}</version>
+    </dependency>
   </dependencies>
 
   <properties>

Modified: openejb/trunk/openejb/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java?rev=1384364&r1=1384363&r2=1384364&view=diff
==============================================================================
--- openejb/trunk/openejb/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java (original)
+++ openejb/trunk/openejb/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java Thu Sep 13 15:15:55 2012
@@ -50,6 +50,7 @@ import org.apache.openejb.config.RemoteS
 import org.apache.openejb.loader.Files;
 import org.apache.openejb.loader.IO;
 import org.apache.openejb.loader.Zips;
+import org.apache.tomee.util.QuickServerXmlParser;
 
 import static org.apache.maven.artifact.Artifact.SCOPE_COMPILE;
 import static org.apache.maven.artifact.repository.ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN;
@@ -136,6 +137,11 @@ public abstract class AbstractTomEEMojo 
     protected int tomeeShutdownPort = 8005;
 
     /**
+     * @parameter expression="${tomee-plugin.ajp}" default-value="8009"
+     */
+    protected int tomeeAjpPort = 8009;
+
+    /**
      * @parameter expression="${tomee-plugin.args}"
      */
     protected String args;
@@ -442,16 +448,17 @@ public abstract class AbstractTomEEMojo 
     private void overrideAddresses() {
         final File serverXml = new File(catalinaBase, "conf/server.xml");
         final String value = read(serverXml);
+        final QuickServerXmlParser parser = QuickServerXmlParser.parse(serverXml);
 
         FileWriter writer = null;
         try {
             writer = new FileWriter(serverXml);
             writer.write(value
-                    .replace("8080", Integer.toString(tomeeHttpPort))
-                    .replace("8005", Integer.toString(tomeeShutdownPort))
-                    .replace("localhost", tomeeHost)
-                    .replace("webapps", webappDir));
-            writer.close();
+                    .replace(parser.http(), Integer.toString(tomeeHttpPort))
+                    .replace(parser.ajp(), Integer.toString(tomeeAjpPort))
+                    .replace(parser.stop(), Integer.toString(tomeeShutdownPort))
+                    .replace(parser.host(), tomeeHost)
+                    .replace(parser.appBase(), webappDir));
         } catch (IOException e) {
             throw new TomEEException(e.getMessage(), e);
         } finally {

Modified: openejb/trunk/openejb/tomee/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/pom.xml?rev=1384364&r1=1384363&r2=1384364&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/pom.xml (original)
+++ openejb/trunk/openejb/tomee/pom.xml Thu Sep 13 15:15:55 2012
@@ -47,6 +47,7 @@
     <module>apache-tomee-deb</module>
     <module>apache-tomee-deb-package</module>
     <module>apache-tomcat</module>
+    <module>tomee-util</module>
   </modules>
 
   <repositories>

Added: openejb/trunk/openejb/tomee/tomee-util/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-util/pom.xml?rev=1384364&view=auto
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-util/pom.xml (added)
+++ openejb/trunk/openejb/tomee/tomee-util/pom.xml Thu Sep 13 15:15:55 2012
@@ -0,0 +1,31 @@
+<?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.
+-->
+<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">
+  <parent>
+    <artifactId>tomee</artifactId>
+    <groupId>org.apache.openejb</groupId>
+    <version>1.1.0-SNAPSHOT</version>
+  </parent>
+  <modelVersion>4.0.0</modelVersion>
+
+  <artifactId>tomee-util</artifactId>
+  <name>OpenEJB :: TomEE :: Util</name>
+</project>

Copied: openejb/trunk/openejb/tomee/tomee-util/src/main/java/org/apache/tomee/util/QuickServerXmlParser.java (from r1382650, openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/QuickServerXmlParser.java)
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-util/src/main/java/org/apache/tomee/util/QuickServerXmlParser.java?p2=openejb/trunk/openejb/tomee/tomee-util/src/main/java/org/apache/tomee/util/QuickServerXmlParser.java&p1=openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/QuickServerXmlParser.java&r1=1382650&r2=1384364&rev=1384364&view=diff
==============================================================================
--- openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/QuickServerXmlParser.java (original)
+++ openejb/trunk/openejb/tomee/tomee-util/src/main/java/org/apache/tomee/util/QuickServerXmlParser.java Thu Sep 13 15:15:55 2012
@@ -1,4 +1,20 @@
-package org.apache.openejb.arquillian.common;
+/*
+ * 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.
+ */
+package org.apache.tomee.util;
 
 import org.xml.sax.Attributes;
 import org.xml.sax.SAXException;
@@ -20,18 +36,24 @@ public class QuickServerXmlParser extend
     private static final String STOP_KEY = "STOP";
     private static final String HTTP_KEY = "HTTP";
     private static final String AJP_KEY = "AJP";
+    private static final String HOST_KEY = "host";
+    private static final String APP_BASE_KEY = "host";
     private static final String DEFAULT_CONNECTOR_KEY = HTTP_KEY;
 
     public static final String DEFAULT_HTTP_PORT = "8080";
     public static final String DEFAULT_STOP_PORT = "8005";
     public static final String DEFAULT_AJP_PORT = "8009";
+    public static final String DEFAULT_HOST = "localhost";
+    public static final String DEFAULT_APP_BASE = "webapps";
 
-    private final Map<String, String> ports = new TreeMap<String, String>(String.CASE_INSENSITIVE_ORDER);
+    private final Map<String, String> values = new TreeMap<String, String>(String.CASE_INSENSITIVE_ORDER);
 
     public QuickServerXmlParser() { // ensure defaults are present
-        ports.put(STOP_KEY, DEFAULT_STOP_PORT);
-        ports.put(HTTP_KEY, DEFAULT_HTTP_PORT);
-        ports.put(AJP_KEY, DEFAULT_AJP_PORT);
+        values.put(STOP_KEY, DEFAULT_STOP_PORT);
+        values.put(HTTP_KEY, DEFAULT_HTTP_PORT);
+        values.put(AJP_KEY, DEFAULT_AJP_PORT);
+        values.put(HOST_KEY, DEFAULT_HOST);
+        values.put(APP_BASE_KEY, DEFAULT_APP_BASE);
     }
 
     @Override
@@ -40,9 +62,9 @@ public class QuickServerXmlParser extend
         if ("Server".equalsIgnoreCase(localName)) {
             final String port = attributes.getValue("port");
             if (port != null) {
-                ports.put(STOP_KEY, port);
+                values.put(STOP_KEY, port);
             } else {
-                ports.put(STOP_KEY, DEFAULT_STOP_PORT);
+                values.put(STOP_KEY, DEFAULT_STOP_PORT);
             }
         } else if ("Connector".equalsIgnoreCase(localName)) {
             String protocol = attributes.getValue("protocol");
@@ -52,7 +74,17 @@ public class QuickServerXmlParser extend
                 protocol = protocol.substring(0, protocol.indexOf("/"));
             }
             final String port = attributes.getValue("port");
-            ports.put(protocol.toUpperCase(), port);
+            values.put(protocol.toUpperCase(), port);
+        } else if ("Host".equalsIgnoreCase(localName)) {
+            final String host = attributes.getValue("name");
+            if (host != null) {
+                values.put(HOST_KEY, host);
+            }
+
+            final String appBase = attributes.getValue("appBase");
+            if (appBase != null) {
+                values.put(APP_BASE_KEY, appBase);
+            }
         }
     }
 
@@ -79,8 +111,16 @@ public class QuickServerXmlParser extend
         return value(STOP_KEY, DEFAULT_STOP_PORT);
     }
 
+    public String appBase() {
+        return value(APP_BASE_KEY, DEFAULT_APP_BASE);
+    }
+
+    public String host() {
+        return value(HOST_KEY, DEFAULT_HOST);
+    }
+
     private String value(final String key, final String defaultValue) {
-        final String port = ports.get(key);
+        final String port = values.get(key);
         if (port == null) {
             return defaultValue;
         }
@@ -89,6 +129,6 @@ public class QuickServerXmlParser extend
 
     @Override
     public String toString() {
-        return "QuickServerXmlParser" + ports;
+        return "QuickServerXmlParser" + values;
     }
 }