Author: dblevins
Date: Tue Aug 28 20:23:13 2007
New Revision: 570627
URL: http://svn.apache.org/viewvc?rev=570627&view=rev
Log:
Allow deployment-id to be optional in an openejb-jar.xml. Fill in a default
value just as we would when they have no <ejb-deployment> declaration at all.
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/InitEjbDeployments.java
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/InitEjbDeployments.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/InitEjbDeployments.java?rev=570627&r1=570626&r2=570627&view=diff
==============================================================================
---
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/InitEjbDeployments.java
(original)
+++
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/InitEjbDeployments.java
Tue Aug 28 20:23:13 2007
@@ -34,9 +34,10 @@
public static Logger logger = Logger.getInstance(LogCategory.OPENEJB,
"org.apache.openejb.util.resources");
private final StringTemplate deploymentIdTemplate;
+ private static final String DEPLOYMENT_ID_FORMAT =
"openejb.deploymentId.format";
public InitEjbDeployments() {
- String format =
SystemInstance.get().getProperty("openejb.deploymentId.format", "{ejbName}");
+ String format = SystemInstance.get().getProperty(DEPLOYMENT_ID_FORMAT,
"{ejbName}");
this.deploymentIdTemplate = new StringTemplate(format);
}
@@ -69,21 +70,26 @@
ejbDeployment = new EjbDeployment();
ejbDeployment.setEjbName(bean.getEjbName());
- ejbDeployment.setDeploymentId(autoAssignDeploymentId(bean,
contextData));
+ ejbDeployment.setDeploymentId(autoAssignDeploymentId(bean,
contextData, deploymentIdTemplate));
- logger.info("Auto-deploying ejb " + bean.getEjbName() + ":
EjbDeployment(deployment-id=" + ejbDeployment.getDeploymentId() + ",
container-id=" + ejbDeployment.getContainerId() + ")");
+ logger.info("Auto-deploying ejb " + bean.getEjbName() + ":
EjbDeployment(deployment-id=" + ejbDeployment.getDeploymentId() + ")");
openejbJar.getEjbDeployment().add(ejbDeployment);
+ } else {
+ if (ejbDeployment.getDeploymentId() == null) {
+ ejbDeployment.setDeploymentId(autoAssignDeploymentId(bean,
contextData, deploymentIdTemplate));
+ logger.info("Auto-assigning deployment-id for ejb " +
bean.getEjbName() + ": EjbDeployment(deployment-id=" +
ejbDeployment.getDeploymentId() + ")");
+ }
}
}
return ejbModule;
}
- private String autoAssignDeploymentId(EnterpriseBean bean, Map<String,
String> contextData) {
+ private String autoAssignDeploymentId(EnterpriseBean bean, Map<String,
String> contextData, StringTemplate template) {
contextData.put("ejbType", bean.getClass().getSimpleName());
contextData.put("ejbClass", bean.getClass().getName());
contextData.put("ejbClass.simpleName",
bean.getClass().getSimpleName());
contextData.put("ejbName", bean.getEjbName());
- return deploymentIdTemplate.apply(contextData);
+ return template.apply(contextData);
}
}