djencks 2005/08/29 19:40:30
Modified: modules/openejb-builder/src/java/org/openejb/deployment
OpenEJBModuleBuilder.java
Log:
GERONIMO-947 step 1. Replace URI parentId with URI[]
Revision Changes Path
1.52 +17 -11
openejb/modules/openejb-builder/src/java/org/openejb/deployment/OpenEJBModuleBuilder.java
Index: OpenEJBModuleBuilder.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/openejb-builder/src/java/org/openejb/deployment/OpenEJBModuleBuilder.java,v
retrieving revision 1.51
retrieving revision 1.52
diff -u -r1.51 -r1.52
--- OpenEJBModuleBuilder.java 26 Aug 2005 08:09:08 -0000 1.51
+++ OpenEJBModuleBuilder.java 29 Aug 2005 23:40:30 -0000 1.52
@@ -149,7 +149,7 @@
*/
public class OpenEJBModuleBuilder implements ModuleBuilder {
- private final URI defaultParentId;
+ private final URI[] defaultParentId;
private final ObjectName listener;
private final CMPEntityBuilder cmpEntityBuilder;
private final SessionBuilder sessionBuilder;
@@ -159,11 +159,11 @@
private final TransactionImportPolicyBuilder
transactionImportPolicyBuilder;
private final Repository repository;
- public OpenEJBModuleBuilder(URI defaultParentId, ObjectName listener,
Object webServiceLinkTemplate, WebServiceBuilder webServiceBuilder, Repository
repository, Kernel kernel) throws GBeanNotFoundException {
+ public OpenEJBModuleBuilder(URI[] defaultParentId, ObjectName listener,
Object webServiceLinkTemplate, WebServiceBuilder webServiceBuilder, Repository
repository, Kernel kernel) throws GBeanNotFoundException {
this(defaultParentId, listener, getLinkData(kernel,
webServiceLinkTemplate), webServiceBuilder, repository);
}
- public OpenEJBModuleBuilder(URI defaultParentId, ObjectName listener,
GBeanData linkTemplate, WebServiceBuilder webServiceBuilder, Repository
repository) {
+ public OpenEJBModuleBuilder(URI[] defaultParentId, ObjectName listener,
GBeanData linkTemplate, WebServiceBuilder webServiceBuilder, Repository
repository) {
this.defaultParentId = defaultParentId;
this.listener = listener;
this.transactionImportPolicyBuilder = new
NoDistributedTxTransactionImportPolicyBuilder();
@@ -230,13 +230,20 @@
throw new DeploymentException("Invalid configId " +
openejbJar.getConfigId(), e);
}
- URI parentId = null;
+ URI[] parentId = null;
if (openejbJar.isSetParentId()) {
+ String parentIdString = openejbJar.getParentId();
try {
- parentId = new URI(openejbJar.getParentId());
- } catch (URISyntaxException e) {
- throw new DeploymentException("Invalid parentId " +
openejbJar.getParentId(), e);
- }
+ String[] parentIdStrings = parentIdString.split(",");
+ parentId = new URI[parentIdStrings.length];
+ for (int i = 0; i < parentIdStrings.length; i++) {
+ String idString = parentIdStrings[i];
+ URI parent = new URI(idString);
+ parentId[i] = parent;
+ }
+ } catch (URISyntaxException e) {
+ throw new DeploymentException("Invalid parentId " +
openejbJar.getParentId(), e);
+ }
} else {
parentId = defaultParentId;
}
@@ -305,7 +312,6 @@
}
OpenejbOpenejbJarType openejbEjbJar =
OpenejbOpenejbJarType.Factory.newInstance();
- openejbEjbJar.setParentId(defaultParentId.toString());
if (null != ejbJar.getId()) {
openejbEjbJar.setConfigId(ejbJar.getId());
} else {
@@ -646,7 +652,7 @@
static {
GBeanInfoBuilder infoBuilder = new
GBeanInfoBuilder(OpenEJBModuleBuilder.class, NameFactory.MODULE_BUILDER);
- infoBuilder.addAttribute("defaultParentId", URI.class, true);
+ infoBuilder.addAttribute("defaultParentId", URI[].class, true);
infoBuilder.addAttribute("listener", ObjectName.class, true);
infoBuilder.addReference("WebServiceLinkTemplate", Object.class,
NameFactory.WEB_SERVICE_LINK);
infoBuilder.addReference("WebServiceBuilder",
WebServiceBuilder.class, NameFactory.MODULE_BUILDER);