Author: rmannibucau
Date: Fri Oct 12 14:00:11 2012
New Revision: 1397569
URL: http://svn.apache.org/viewvc?rev=1397569&view=rev
Log:
managing autodeploy attribute (with new deployer style)
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/DeployerEjb.java
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/DeployerEjb.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/DeployerEjb.java?rev=1397569&r1=1397568&r2=1397569&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/DeployerEjb.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/DeployerEjb.java
Fri Oct 12 14:00:11 2012
@@ -23,6 +23,7 @@ import org.apache.openejb.config.*;
import org.apache.openejb.config.sys.AdditionalDeployments;
import org.apache.openejb.config.sys.Deployments;
import org.apache.openejb.config.sys.JaxbOpenejb;
+import org.apache.openejb.core.ThreadContext;
import org.apache.openejb.loader.IO;
import org.apache.openejb.loader.SystemInstance;
import org.apache.openejb.util.LogCategory;
@@ -52,6 +53,8 @@ public class DeployerEjb implements Depl
public static final String OPENEJB_DEPLOYER_FORCED_APP_ID_PROP =
"openejb.deployer.forced.appId";
public static final Logger LOGGER =
Logger.getInstance(LogCategory.OPENEJB, DeployerEjb.class);
+ public static final ThreadLocal<Boolean> AUTO_DEPLOY = new
ThreadLocal<Boolean>();
+
private final static File uniqueFile;
private final static boolean oldWarDeployer =
"old".equalsIgnoreCase(SystemInstance.get().getOptions().get("openejb.deployer.war",
"new"));
@@ -121,10 +124,16 @@ public class DeployerEjb implements Depl
AppModule appModule = null;
final File file = new File(realLocation(rawLocation));
+ final boolean autoDeploy =
Boolean.parseBoolean(properties.getProperty("openejb.app.autodeploy", "false"));
if (WebAppDeployer.Helper.isWebApp(file) && !oldWarDeployer) {
- return SystemInstance.get().getComponent(WebAppDeployer.class)
+ AUTO_DEPLOY.set(autoDeploy);
+ try {
+ return SystemInstance.get().getComponent(WebAppDeployer.class)
.deploy(contextRoot(properties,
file.getAbsolutePath()), file);
+ } finally {
+ AUTO_DEPLOY.remove();
+ }
}
AppInfo appInfo;
@@ -179,7 +188,7 @@ public class DeployerEjb implements Depl
}
appInfo = configurationFactory.configureApplication(appModule);
- appInfo.autoDeploy =
Boolean.parseBoolean(properties.getProperty("openejb.app.autodeploy", "false"));
+ appInfo.autoDeploy = autoDeploy;
if (properties != null &&
properties.containsKey(OPENEJB_DEPLOYER_FORCED_APP_ID_PROP)) {
appInfo.appId =
properties.getProperty(OPENEJB_DEPLOYER_FORCED_APP_ID_PROP);
Modified:
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java?rev=1397569&r1=1397568&r2=1397569&view=diff
==============================================================================
---
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
(original)
+++
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
Fri Oct 12 14:00:11 2012
@@ -60,6 +60,7 @@ import org.apache.openejb.BeanContext;
import org.apache.openejb.ClassLoaderUtil;
import org.apache.openejb.Injection;
import org.apache.openejb.OpenEJBException;
+import org.apache.openejb.assembler.DeployerEjb;
import org.apache.openejb.assembler.classic.AppInfo;
import org.apache.openejb.assembler.classic.Assembler;
import org.apache.openejb.assembler.classic.ClassListInfo;
@@ -877,6 +878,9 @@ public class TomcatWebAppBuilder impleme
contextInfo.standardContext = standardContext; // ensure
to do it before an exception can be thrown
contextInfo.appInfo =
configurationFactory.configureApplication(appModule);
+ final Boolean autoDeploy = DeployerEjb.AUTO_DEPLOY.get();
+ contextInfo.appInfo.autoDeploy = autoDeploy == null ||
autoDeploy;
+ DeployerEjb.AUTO_DEPLOY.remove();
appContext = a.createApplication(contextInfo.appInfo,
classLoader);
// todo add watched resources to context