Author: rmannibucau Date: Fri Jan 31 17:39:21 2014 New Revision: 1563190 URL: http://svn.apache.org/r1563190 Log: TOMEE-1114 useOpenEJB option in tmp
Modified: tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java Modified: tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java?rev=1563190&r1=1563189&r2=1563190&view=diff ============================================================================== --- tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java (original) +++ tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java Fri Jan 31 17:39:21 2014 @@ -169,6 +169,12 @@ public abstract class AbstractTomEEMojo @Parameter(defaultValue = "lib") protected String libDir; + @Parameter(defaultValue = "${project.basedir}/src/main") + protected File mainDir; + + @Parameter(defaultValue = "${project.build.directory}") + protected File target; + @Parameter(property = "tomee-plugin.conf", defaultValue = "${project.basedir}/src/main/tomee/conf") protected File config; @@ -241,12 +247,20 @@ public abstract class AbstractTomEEMojo @Parameter(defaultValue = "${settings}", readonly = true) protected Settings settings; + /** + * use openejb-standalone automatically instead of TomEE + */ + @Parameter(property = "tomee-plugin.openejb", defaultValue = "false") + protected boolean useOpenEJB; + protected File deployedFile = null; protected RemoteServer server = null; protected String container = "TomEE"; @Override public void execute() throws MojoExecutionException, MojoFailureException { + fixConfig(); + if ("-1".equals(tomeeVersion)) { final String version = OpenEjbVersion.get().getVersion(); tomeeVersion = "1" + version.substring(1, version.length()); @@ -297,6 +311,34 @@ public abstract class AbstractTomEEMojo run(); } + protected void fixConfig() { + if (useOpenEJB) { + tomeeGroupId = "org.apache.openejb"; + tomeeArtifactId = "openejb-standalone"; + tomeeClassifier = null; + tomeeShutdownCommand = "Q"; + if (8005 == tomeeShutdownPort) { // default admin port + tomeeShutdownPort = 4200; + } + if (tomeeVersion.startsWith("1.")) { + tomeeVersion = OpenEjbVersion.get().getVersion(); + } + + if (catalinaBase.getName().equals("apache-tomee") && catalinaBase.getParentFile().equals(target)) { + catalinaBase = new File(target, "apache-openejb"); + } + if (config.getParentFile().getName().equals("tomee") && config.getParentFile().getParentFile().equals(mainDir)) { + config = new File(mainDir, "openejb/conf"); + } + if (lib.getParentFile().getName().equals("tomee") && lib.getParentFile().getParentFile().equals(mainDir)) { + lib = new File(mainDir, "openejb/lib"); + } + if (bin.getParentFile().getName().equals("tomee") && bin.getParentFile().getParentFile().equals(mainDir)) { + bin = new File(mainDir, "openejb/bin"); + } + } + } + protected String getAdditionalClasspath() { if (!classpaths.isEmpty()) { final StringBuilder cpBuilder = new StringBuilder();