You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by dj...@apache.org on 2006/09/12 01:51:36 UTC
svn commit: r442387 [2/5] - in /geronimo/server/trunk:
configs/axis-deployer/src/plan/ configs/client-deployer/src/plan/
configs/j2ee-deployer/src/plan/ configs/jetty-deployer/src/plan/
configs/openejb-deployer/src/plan/ configs/tomcat-deployer/src/pla...
Added: geronimo/server/trunk/modules/geronimo-connector-builder/src/main/java/org/apache/geronimo/connector/deployment/ResourceRefBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-connector-builder/src/main/java/org/apache/geronimo/connector/deployment/ResourceRefBuilder.java?view=auto&rev=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-connector-builder/src/main/java/org/apache/geronimo/connector/deployment/ResourceRefBuilder.java (added)
+++ geronimo/server/trunk/modules/geronimo-connector-builder/src/main/java/org/apache/geronimo/connector/deployment/ResourceRefBuilder.java Mon Sep 11 16:51:32 2006
@@ -0,0 +1,187 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation
+ *
+ * Licensed 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.geronimo.connector.deployment;
+
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.naming.Reference;
+import javax.xml.namespace.QName;
+
+import org.apache.geronimo.common.DeploymentException;
+import org.apache.geronimo.common.UnresolvedReferenceException;
+import org.apache.geronimo.gbean.AbstractNameQuery;
+import org.apache.geronimo.gbean.GBeanInfo;
+import org.apache.geronimo.gbean.GBeanInfoBuilder;
+import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
+import org.apache.geronimo.j2ee.deployment.Module;
+import org.apache.geronimo.kernel.GBeanNotFoundException;
+import org.apache.geronimo.kernel.config.Configuration;
+import org.apache.geronimo.kernel.repository.Environment;
+import org.apache.geronimo.naming.deployment.AbstractNamingBuilder;
+import org.apache.geronimo.naming.reference.ResourceReference;
+import org.apache.geronimo.xbeans.geronimo.naming.GerPatternType;
+import org.apache.geronimo.xbeans.geronimo.naming.GerResourceRefDocument;
+import org.apache.geronimo.xbeans.geronimo.naming.GerResourceRefType;
+import org.apache.geronimo.xbeans.j2ee.ConnectorDocument;
+import org.apache.geronimo.xbeans.j2ee.ResourceRefType;
+import org.apache.xmlbeans.QNameSet;
+import org.apache.xmlbeans.XmlObject;
+
+/**
+ * @version $Rev:$ $Date:$
+ */
+public class ResourceRefBuilder extends AbstractNamingBuilder {
+ private static final String J2EE_NAMESPACE = ConnectorDocument.type.getDocumentElementName().getNamespaceURI();
+ private static final QName RESOURCE_REF_QNAME = new QName(J2EE_NAMESPACE, "resource-ref");
+ private static final QNameSet RESOURCE_REF_QNAME_SET = QNameSet.singleton(RESOURCE_REF_QNAME);
+ private static final QName GER_RESOURCE_REF_QNAME = GerResourceRefDocument.type.getDocumentElementName();
+ private static final QNameSet GER_RESOURCE_REF_QNAME_SET = QNameSet.singleton(GER_RESOURCE_REF_QNAME);
+
+ private static final String JAXR_CONNECTION_FACTORY_CLASS = "javax.xml.registry.ConnectionFactory";
+ private static final String JAVAX_MAIL_SESSION_CLASS = "javax.mail.Session";
+
+
+ public void buildEnvironment(XmlObject specDD, XmlObject plan, Environment environment) {
+ }
+
+ public void buildNaming(XmlObject specDD, XmlObject plan, Configuration localConfiguration, Configuration remoteConfiguration, Module module, Map componentContext) throws DeploymentException {
+ XmlObject[] resourceRefsUntyped = specDD.selectChildren(RESOURCE_REF_QNAME_SET);
+ XmlObject[] gerResourceRefsUntyped = plan == null? NO_REFS: plan.selectChildren(GER_RESOURCE_REF_QNAME_SET);
+ Map refMap = mapResourceRefs(gerResourceRefsUntyped);
+ ClassLoader cl = localConfiguration.getConfigurationClassLoader();
+
+ for (int i = 0; i < resourceRefsUntyped.length; i++) {
+ ResourceRefType resourceRef = (ResourceRefType) resourceRefsUntyped[i];
+ String name = resourceRef.getResRefName().getStringValue().trim();
+ String type = resourceRef.getResType().getStringValue().trim();
+ GerResourceRefType gerResourceRef = (GerResourceRefType) refMap.get(name);
+ Class iface;
+ try {
+ iface = cl.loadClass(type);
+ } catch (ClassNotFoundException e) {
+ throw new DeploymentException("could not load class " + type, e);
+ }
+ if (iface == URL.class) {
+ if (gerResourceRef == null || !gerResourceRef.isSetUrl()) {
+ throw new DeploymentException("No url supplied to resolve: " + name);
+ }
+ try {
+ //TODO expose jsr-77 objects for these guys
+ componentContext.put(ENV + name, new URL(gerResourceRef.getUrl()));
+ } catch (MalformedURLException e) {
+ throw new DeploymentException("Could not convert " + gerResourceRef.getUrl() + " to URL", e);
+ }
+ } else {
+ //determine jsr-77 type from interface
+ String j2eeType;
+
+
+ if (JAVAX_MAIL_SESSION_CLASS.equals(type)) {
+ j2eeType = NameFactory.JAVA_MAIL_RESOURCE;
+ } else if (JAXR_CONNECTION_FACTORY_CLASS.equals(type)) {
+ j2eeType = NameFactory.JAXR_CONNECTION_FACTORY;
+ } else {
+ j2eeType = NameFactory.JCA_MANAGED_CONNECTION_FACTORY;
+ }
+ try {
+ AbstractNameQuery containerId = getResourceContainerId(name, j2eeType, null, gerResourceRef);
+
+ try {
+ localConfiguration.findGBean(containerId);
+ } catch (GBeanNotFoundException e) {
+ throw new UnresolvedReferenceException("Resource", false, containerId.toString(), localConfiguration.getId().toString());
+ }
+
+ Reference ref = new ResourceReference(localConfiguration.getId(), containerId, iface);
+ componentContext.put(ENV + name, ref);
+ } catch (UnresolvedReferenceException e) {
+
+ StringBuffer errorMessage = new StringBuffer("Unable to resolve resource reference '");
+ errorMessage.append(name);
+ errorMessage.append("' (");
+ if (e.isMultiple()) {
+ errorMessage.append("Found multiple matching resources. Try being more specific in a resource-ref mapping in your Geronimo deployment plan.");
+ } else if (gerResourceRef == null) {
+ errorMessage.append("Could not auto-map to resource. Try adding a resource-ref mapping to your Geronimo deployment plan.");
+ } else if (gerResourceRef.isSetResourceLink()) {
+ errorMessage.append("Could not find resource '");
+ errorMessage.append(gerResourceRef.getResourceLink());
+ errorMessage.append("'. Perhaps it has not yet been configured, or your application does not have a dependency declared for that resource module?");
+ } else {
+ errorMessage.append("Could not find the resource specified in your Geronimo deployment plan:");
+ errorMessage.append(gerResourceRef.getPattern());
+ }
+ errorMessage.append(")");
+
+ throw new DeploymentException(errorMessage.toString());
+ }
+ }
+ }
+
+ }
+
+ private Map mapResourceRefs(XmlObject[] refs) {
+ Map refMap = new HashMap();
+ if (refs != null) {
+ for (int i = 0; i < refs.length; i++) {
+ GerResourceRefType ref = (GerResourceRefType) refs[i].copy().changeType(GerResourceRefType.type);
+ refMap.put(ref.getRefName().trim(), ref);
+ }
+ }
+ return refMap;
+ }
+
+ private AbstractNameQuery getResourceContainerId(String name, String type, URI moduleURI, GerResourceRefType gerResourceRef) {
+ AbstractNameQuery containerId;
+ String module = moduleURI == null ? null : moduleURI.toString();
+ if (gerResourceRef == null) {
+ containerId = buildAbstractNameQuery(null, module, name, type, NameFactory.RESOURCE_ADAPTER_MODULE);
+ } else if (gerResourceRef.isSetResourceLink()) {
+ containerId = buildAbstractNameQuery(null, module, gerResourceRef.getResourceLink().trim(), type, NameFactory.RESOURCE_ADAPTER_MODULE);
+ } else {
+ //construct name from components
+ GerPatternType patternType = gerResourceRef.getPattern();
+ containerId = buildAbstractNameQuery(patternType, type, NameFactory.RESOURCE_ADAPTER_MODULE, null);
+ }
+ return containerId;
+ }
+
+ public QNameSet getSpecQNameSet() {
+ return RESOURCE_REF_QNAME_SET;
+ }
+
+ public QNameSet getPlanQNameSet() {
+ return GER_RESOURCE_REF_QNAME_SET;
+ }
+
+ public static final GBeanInfo GBEAN_INFO;
+
+ static {
+ GBeanInfoBuilder infoBuilder = GBeanInfoBuilder.createStatic(ResourceRefBuilder.class, NameFactory.MODULE_BUILDER);
+
+ GBEAN_INFO = infoBuilder.getBeanInfo();
+ }
+
+ public static GBeanInfo getGBeanInfo() {
+ return GBEAN_INFO;
+ }
+}
Propchange: geronimo/server/trunk/modules/geronimo-connector-builder/src/main/java/org/apache/geronimo/connector/deployment/ResourceRefBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/modules/geronimo-connector-builder/src/main/java/org/apache/geronimo/connector/deployment/ResourceRefBuilder.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/modules/geronimo-connector-builder/src/main/java/org/apache/geronimo/connector/deployment/ResourceRefBuilder.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilderTest.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilderTest.java?view=diff&rev=442387&r1=442386&r2=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilderTest.java (original)
+++ geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilderTest.java Mon Sep 11 16:51:32 2006
@@ -20,7 +20,6 @@
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
-import java.net.URI;
import java.net.URL;
import java.net.URLClassLoader;
import java.sql.Connection;
@@ -36,9 +35,6 @@
import javax.naming.Reference;
import javax.sql.DataSource;
-import javax.xml.namespace.QName;
-
-import org.apache.geronimo.testsupport.TestSupport;
import org.apache.geronimo.common.DeploymentException;
import org.apache.geronimo.deployment.DeploymentContext;
@@ -50,14 +46,11 @@
import org.apache.geronimo.gbean.GBeanData;
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.GBeanInfoBuilder;
+import org.apache.geronimo.j2ee.deployment.ActivationSpecInfoLocator;
import org.apache.geronimo.j2ee.deployment.EARConfigBuilder;
import org.apache.geronimo.j2ee.deployment.EARContext;
-import org.apache.geronimo.j2ee.deployment.EJBReferenceBuilder;
import org.apache.geronimo.j2ee.deployment.Module;
import org.apache.geronimo.j2ee.deployment.ModuleBuilder;
-import org.apache.geronimo.j2ee.deployment.RefContext;
-import org.apache.geronimo.j2ee.deployment.ResourceReferenceBuilder;
-import org.apache.geronimo.j2ee.deployment.ServiceReferenceBuilder;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
import org.apache.geronimo.j2ee.management.impl.J2EEServerImpl;
import org.apache.geronimo.kernel.Jsr77Naming;
@@ -83,6 +76,7 @@
import org.apache.geronimo.kernel.repository.ImportType;
import org.apache.geronimo.kernel.repository.Repository;
import org.apache.geronimo.system.serverinfo.BasicServerInfo;
+import org.apache.geronimo.testsupport.TestSupport;
import org.apache.geronimo.transaction.manager.GeronimoTransactionManagerGBean;
import org.tranql.sql.jdbc.JDBCUtil;
@@ -113,24 +107,7 @@
}
};
- private EJBReferenceBuilder ejbReferenceBuilder = new EJBReferenceBuilder() {
-
-
- public Reference createCORBAReference(Configuration configuration, AbstractNameQuery containerNameQuery, URI nsCorbaloc, String objectName, String home) {
- return null;
- }
-
- public Reference createEJBRemoteRef(String refName, Configuration configuration, String name, String requiredModule, String optionalModule, Artifact targetConfigId, AbstractNameQuery query, boolean isSession, String home, String remote) {
- return null;
- }
-
- public Reference createEJBLocalRef(String refName, Configuration configuration, String name, String requiredModule, String optionalModule, Artifact targetConfigId, AbstractNameQuery query, boolean isSession, String localHome, String local) {
- return null;
- }
-
- };
-
- private ResourceReferenceBuilder resourceReferenceBuilder = new ResourceReferenceBuilder() {
+ private ActivationSpecInfoLocator activationSpecInfoLocator = new ActivationSpecInfoLocator() {
public Reference createResourceRef(AbstractNameQuery containerId, Class iface, Configuration configuration) {
return null;
@@ -145,13 +122,6 @@
}
};
- private ServiceReferenceBuilder serviceReferenceBuilder = new ServiceReferenceBuilder() {
- //it could return a Service or a Reference, we don't care
- public Object createService(Class serviceInterface, URI wsdlURI, URI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMap, List handlerInfos, Object serviceRefType, DeploymentContext deploymentContext, Module module, ClassLoader classLoader) {
- return null;
- }
- };
-
private Kernel kernel;
private EditableConfigurationManager configurationManager;
private static final Naming naming = new Jsr77Naming();
@@ -177,12 +147,10 @@
new AbstractNameQuery(serverName, J2EEServerImpl.GBEAN_INFO.getInterfaces()),
null,
null,
- ejbReferenceBuilder,
null,
new ConnectorModuleBuilder(defaultEnvironment, defaultMaxSize, defaultMinSize, defaultBlockingTimeoutMilliseconds, defaultidleTimeoutMinutes, defaultXATransactionCaching, defaultXAThreadCaching, Collections.singleton(serviceBuilder)),
- resourceReferenceBuilder,
+ activationSpecInfoLocator,
null,
- serviceReferenceBuilder,
null,
serviceBuilder,
kernel.getNaming());
@@ -391,8 +359,8 @@
connectionTrackerName,
null,
null,
- null,
- new RefContext(ejbReferenceBuilder, moduleBuilder, serviceReferenceBuilder));
+ null
+ );
action.install(moduleBuilder, earContext, module, configurationStore);
earContext.getClassLoader();
Added: geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/MessageDestinationTest.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/MessageDestinationTest.java?view=auto&rev=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/MessageDestinationTest.java (added)
+++ geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/MessageDestinationTest.java Mon Sep 11 16:51:32 2006
@@ -0,0 +1,314 @@
+/**
+ *
+ * Copyright 2005 The Apache Software Foundation
+ *
+ * Licensed 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.geronimo.connector.deployment;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.HashMap;
+
+import junit.framework.TestCase;
+import org.apache.geronimo.common.DeploymentException;
+import org.apache.geronimo.connector.AdminObjectWrapperGBean;
+import org.apache.geronimo.gbean.AbstractName;
+import org.apache.geronimo.gbean.GBeanData;
+import org.apache.geronimo.j2ee.deployment.ConnectorModule;
+import org.apache.geronimo.j2ee.deployment.EARContext;
+import org.apache.geronimo.j2ee.deployment.Module;
+import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
+import org.apache.geronimo.kernel.Jsr77Naming;
+import org.apache.geronimo.kernel.Naming;
+import org.apache.geronimo.kernel.config.Configuration;
+import org.apache.geronimo.kernel.config.ConfigurationData;
+import org.apache.geronimo.kernel.config.ConfigurationManager;
+import org.apache.geronimo.kernel.config.ConfigurationModuleType;
+import org.apache.geronimo.kernel.config.ConfigurationResolver;
+import org.apache.geronimo.kernel.config.ConfigurationStore;
+import org.apache.geronimo.kernel.config.LifecycleException;
+import org.apache.geronimo.kernel.config.LifecycleMonitor;
+import org.apache.geronimo.kernel.config.LifecycleResults;
+import org.apache.geronimo.kernel.config.NoSuchConfigException;
+import org.apache.geronimo.kernel.config.NoSuchStoreException;
+import org.apache.geronimo.kernel.repository.Artifact;
+import org.apache.geronimo.kernel.repository.ArtifactResolver;
+import org.apache.geronimo.kernel.repository.Environment;
+import org.apache.geronimo.kernel.repository.Version;
+import org.apache.xmlbeans.XmlCursor;
+import org.apache.xmlbeans.XmlException;
+import org.apache.xmlbeans.XmlObject;
+
+/**
+ * @version $Rev:390932 $ $Date$
+ */
+public class MessageDestinationTest extends TestCase {
+
+ private static final Naming naming = new Jsr77Naming();
+ Configuration configuration;
+ AbstractName baseName;
+ AdminObjectRefBuilder adminObjectRefBuilder = new AdminObjectRefBuilder();
+ Module module;
+
+ Map componentContext = new HashMap();
+
+ protected void setUp() throws Exception {
+ super.setUp();
+ Artifact id = new Artifact("test", "test", "", "car");
+ configuration = new Configuration(Collections.EMPTY_LIST,
+ new ConfigurationData(id, naming),
+ new ConfigurationResolver(id, null),
+ null);
+ module = new ConnectorModule(false, new AbstractName(id, Collections.singletonMap("name", "test")), null, null, "foo", null, null, null);
+ EARContext earContext = new EARContext(new File("foo"), null, new Environment(new Artifact("foo", "bar", "1.0", "car")), ConfigurationModuleType.EAR, naming,
+ new ConfigurationManager() {
+ public boolean isInstalled(Artifact configurationId) {
+ return false;
+ }
+
+ public Artifact[] getInstalled(Artifact query) {
+ return new Artifact[0];
+ }
+
+ public Artifact[] getLoaded(Artifact query) {
+ return new Artifact[0];
+ }
+
+ public Artifact[] getRunning(Artifact query) {
+ return new Artifact[0];
+ }
+
+ public boolean isLoaded(Artifact configID) {
+ return false;
+ }
+
+ public List listStores() {
+ return Collections.EMPTY_LIST;
+ }
+
+ public ConfigurationStore[] getStores() {
+ return new ConfigurationStore[0];
+ }
+
+ public ConfigurationStore getStoreForConfiguration(Artifact configuration) {
+ return null;
+ }
+
+ public List listConfigurations(AbstractName store) throws NoSuchStoreException {
+ return Collections.EMPTY_LIST;
+ }
+
+ public boolean isRunning(Artifact configurationId) {
+ return false;
+ }
+
+ public List listConfigurations() {
+ return null;
+ }
+
+ public boolean isConfiguration(Artifact artifact) {
+ return false;
+ }
+
+ public Configuration getConfiguration(Artifact configurationId) {
+ return null;
+ }
+
+ public LifecycleResults loadConfiguration(Artifact configurationId) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults loadConfiguration(ConfigurationData configurationData) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults loadConfiguration(Artifact configurationId, LifecycleMonitor monitor) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults loadConfiguration(ConfigurationData configurationData, LifecycleMonitor monitor) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults unloadConfiguration(Artifact configurationId) throws NoSuchConfigException {
+ return null;
+ }
+
+ public LifecycleResults unloadConfiguration(Artifact configurationId, LifecycleMonitor monitor) throws NoSuchConfigException {
+ return null;
+ }
+
+ public LifecycleResults startConfiguration(Artifact configurationId) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults startConfiguration(Artifact configurationId, LifecycleMonitor monitor) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults stopConfiguration(Artifact configurationId) throws NoSuchConfigException {
+ return null;
+ }
+
+ public LifecycleResults stopConfiguration(Artifact configurationId, LifecycleMonitor monitor) throws NoSuchConfigException {
+ return null;
+ }
+
+ public LifecycleResults restartConfiguration(Artifact configurationId) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults restartConfiguration(Artifact configurationId, LifecycleMonitor monitor) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults reloadConfiguration(Artifact configurationId) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults reloadConfiguration(Artifact configurationId, LifecycleMonitor monitor) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults reloadConfiguration(Artifact configurationId, Version version) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults reloadConfiguration(Artifact configurationId, Version version, LifecycleMonitor monitor) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults reloadConfiguration(ConfigurationData configurationData) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public LifecycleResults reloadConfiguration(ConfigurationData configurationData, LifecycleMonitor monitor) throws NoSuchConfigException, LifecycleException {
+ return null;
+ }
+
+ public void uninstallConfiguration(Artifact configurationId) throws IOException, NoSuchConfigException {
+
+ }
+
+ public ArtifactResolver getArtifactResolver() {
+ return null;
+ }
+
+ public boolean isOnline() {
+ return true;
+ }
+
+ public void setOnline(boolean online) {
+ }
+
+ }, null, null, null, null, null, null, null, null);
+ module.setEarContext(earContext);
+ module.setRootEarContext(earContext);
+ baseName = naming.createRootName(configuration.getId(), "testRoot", NameFactory.RESOURCE_ADAPTER_MODULE);
+ }
+
+ private static final String SPECDD1 = "<tmp xmlns=\"http://java.sun.com/xml/ns/j2ee\">" +
+ "<message-destination><message-destination-name>d1</message-destination-name></message-destination>" +
+ "<message-destination><message-destination-name>d2</message-destination-name></message-destination>" +
+ "<message-destination-ref>" +
+ " <message-destination-ref-name>n1</message-destination-ref-name>" +
+ " <message-destination-type>java.lang.Object</message-destination-type>" +
+ " <message-destination-link>d1</message-destination-link>" +
+ "</message-destination-ref>" +
+ "<message-destination-ref>" +
+ " <message-destination-ref-name>n2</message-destination-ref-name>" +
+ " <message-destination-type>java.lang.Object</message-destination-type>" +
+ " <message-destination-link>d2</message-destination-link>" +
+ "</message-destination-ref>" +
+ "</tmp>";
+
+ private static final String PLAN1 = "<tmp xmlns=\"http://geronimo.apache.org/xml/ns/naming-1.2\">" +
+ "<message-destination>" +
+ " <message-destination-name>d1</message-destination-name>" +
+ " <admin-object-link>l1</admin-object-link>" +
+ "</message-destination>" +
+ "<message-destination>" +
+ " <message-destination-name>d2</message-destination-name>" +
+ " <admin-object-link>l2</admin-object-link>" +
+ "</message-destination>" +
+ "</tmp>";
+
+ public void testMessageDestinations() throws Exception {
+ XmlObject specDD = parse(SPECDD1);
+ XmlObject plan = parse(PLAN1);
+ adminObjectRefBuilder.initContext(specDD, plan, configuration, configuration, module);
+ AbstractName n1 = naming.createChildName(baseName, "l1", NameFactory.JCA_ADMIN_OBJECT);
+ AbstractName n2 = naming.createChildName(baseName, "l2", NameFactory.JCA_ADMIN_OBJECT);
+ configuration.addGBean(new GBeanData(n1, AdminObjectWrapperGBean.GBEAN_INFO));
+ configuration.addGBean(new GBeanData(n2, AdminObjectWrapperGBean.GBEAN_INFO));
+ adminObjectRefBuilder.buildNaming(specDD, plan, configuration, configuration, module, componentContext);
+ assertEquals(2, componentContext.size());
+ }
+
+ private static final String PLAN2 = "<tmp xmlns=\"http://geronimo.apache.org/xml/ns/naming-1.2\">" +
+ "<message-destination>" +
+ " <message-destination-name>d1</message-destination-name>" +
+ " <admin-object-module>testRoot</admin-object-module>" +
+ " <admin-object-link>l1</admin-object-link>" +
+ "</message-destination>" +
+ "<message-destination>" +
+ " <message-destination-name>d2</message-destination-name>" +
+ " <admin-object-module>testRoot</admin-object-module>" +
+ " <admin-object-link>l2</admin-object-link>" +
+ "</message-destination>" +
+ "</tmp>";
+ public void testMessageDestinationsWithModule() throws Exception {
+ XmlObject specDD = parse(SPECDD1);
+ XmlObject plan = parse(PLAN2);
+ adminObjectRefBuilder.initContext(specDD, plan, configuration, configuration, module);
+ AbstractName n1 = naming.createChildName(baseName, "l1", NameFactory.JCA_ADMIN_OBJECT);
+ AbstractName n2 = naming.createChildName(baseName, "l2", NameFactory.JCA_ADMIN_OBJECT);
+ configuration.addGBean(new GBeanData(n1, AdminObjectWrapperGBean.GBEAN_INFO));
+ configuration.addGBean(new GBeanData(n2, AdminObjectWrapperGBean.GBEAN_INFO));
+ adminObjectRefBuilder.buildNaming(specDD, plan, configuration, configuration, module, componentContext);
+ assertEquals(2, componentContext.size());
+ }
+
+ private static final String SPECDD2 = "<tmp xmlns=\"http://java.sun.com/xml/ns/j2ee\">" +
+ "</tmp>";
+
+
+ public void testMessageDestinationsMatch() throws Exception {
+ XmlObject specDD = parse(SPECDD2);
+ XmlObject plan = parse(PLAN1);
+ try {
+ adminObjectRefBuilder.initContext(specDD, plan, configuration, configuration, module);
+ fail("tried to register a GerMessageDestination witout a MessageDestination and it succeeded");
+ } catch (DeploymentException e) {
+
+ }
+ }
+
+ private XmlObject parse(String xmlString) throws XmlException {
+ XmlObject xmlObject = XmlObject.Factory.parse(xmlString);
+ XmlCursor xmlCursor = xmlObject.newCursor();
+ try {
+ xmlCursor.toFirstChild();
+ return xmlCursor.getObject();
+ } finally {
+ xmlCursor.dispose();
+ }
+ }
+
+
+}
+
Propchange: geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/MessageDestinationTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/MessageDestinationTest.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/MessageDestinationTest.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/PlanParsingTest.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/PlanParsingTest.java?view=diff&rev=442387&r1=442386&r2=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/PlanParsingTest.java (original)
+++ geronimo/server/trunk/modules/geronimo-connector-builder/src/test/java/org/apache/geronimo/connector/deployment/PlanParsingTest.java Mon Sep 11 16:51:32 2006
@@ -1,17 +1,15 @@
package org.apache.geronimo.connector.deployment;
-import java.io.File;
import java.net.URL;
import javax.xml.namespace.QName;
-import org.apache.geronimo.testsupport.TestSupport;
-
+import org.apache.geronimo.deployment.xmlbeans.XmlBeansUtil;
import org.apache.geronimo.schema.SchemaConversionUtils;
+import org.apache.geronimo.testsupport.TestSupport;
import org.apache.geronimo.xbeans.geronimo.GerConnectorDocument;
import org.apache.geronimo.xbeans.geronimo.GerConnectorType;
import org.apache.geronimo.xbeans.j2ee.ConnectorDocument;
-import org.apache.geronimo.deployment.xmlbeans.XmlBeansUtil;
import org.apache.xmlbeans.XmlException;
import org.apache.xmlbeans.XmlObject;
Added: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/ActivationSpecInfoLocator.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/ActivationSpecInfoLocator.java?view=auto&rev=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/ActivationSpecInfoLocator.java (added)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/ActivationSpecInfoLocator.java Mon Sep 11 16:51:32 2006
@@ -0,0 +1,30 @@
+/**
+ *
+ * Copyright 2004 The Apache Software Foundation
+ *
+ * Licensed 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.geronimo.j2ee.deployment;
+
+import org.apache.geronimo.common.DeploymentException;
+import org.apache.geronimo.gbean.AbstractNameQuery;
+import org.apache.geronimo.gbean.GBeanData;
+import org.apache.geronimo.kernel.config.Configuration;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public interface ActivationSpecInfoLocator {
+
+ GBeanData locateActivationSpecInfo(AbstractNameQuery nameQuery, String messageListenerInterface, Configuration configuration) throws DeploymentException;
+
+}
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/ActivationSpecInfoLocator.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/ActivationSpecInfoLocator.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/ActivationSpecInfoLocator.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/CorbaGBeanNameSource.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/CorbaGBeanNameSource.java?view=auto&rev=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/CorbaGBeanNameSource.java (added)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/CorbaGBeanNameSource.java Mon Sep 11 16:51:32 2006
@@ -0,0 +1,27 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation
+ *
+ * Licensed 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.geronimo.j2ee.deployment;
+
+import org.apache.geronimo.gbean.AbstractNameQuery;
+
+/**
+ * @version $Rev:$ $Date:$
+ */
+public interface CorbaGBeanNameSource {
+ AbstractNameQuery getCorbaGBeanName();
+}
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/CorbaGBeanNameSource.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/CorbaGBeanNameSource.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/CorbaGBeanNameSource.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java?view=diff&rev=442387&r1=442386&r2=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java (original)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java Mon Sep 11 16:51:32 2006
@@ -36,6 +36,7 @@
import java.util.Set;
import java.util.jar.JarFile;
import java.util.zip.ZipEntry;
+
import javax.xml.namespace.QName;
import org.apache.commons.logging.Log;
@@ -51,7 +52,6 @@
import org.apache.geronimo.deployment.util.NestedJarFile;
import org.apache.geronimo.deployment.xbeans.ArtifactType;
import org.apache.geronimo.deployment.xbeans.EnvironmentType;
-import org.apache.geronimo.deployment.xbeans.ServiceDocument;
import org.apache.geronimo.deployment.xmlbeans.XmlBeansUtil;
import org.apache.geronimo.gbean.AbstractName;
import org.apache.geronimo.gbean.AbstractNameQuery;
@@ -84,7 +84,6 @@
import org.apache.geronimo.xbeans.geronimo.j2ee.GerApplicationType;
import org.apache.geronimo.xbeans.geronimo.j2ee.GerExtModuleType;
import org.apache.geronimo.xbeans.geronimo.j2ee.GerModuleType;
-import org.apache.geronimo.xbeans.geronimo.j2ee.GerSecurityDocument;
import org.apache.geronimo.xbeans.j2ee.ApplicationType;
import org.apache.geronimo.xbeans.j2ee.ModuleType;
import org.apache.xmlbeans.XmlException;
@@ -93,14 +92,12 @@
/**
* @version $Rev$ $Date$
*/
-public class EARConfigBuilder implements ConfigurationBuilder {
+public class EARConfigBuilder implements ConfigurationBuilder, CorbaGBeanNameSource {
private static final Log log = LogFactory.getLog(EARConfigBuilder.class);
private static final String LINE_SEP = System.getProperty("line.separator");
private final static QName APPLICATION_QNAME = GerApplicationDocument.type.getDocumentElementName();
- private static final QName SECURITY_QNAME = GerSecurityDocument.type.getDocumentElementName();
- private static final QName SERVICE_QNAME = ServiceDocument.type.getDocumentElementName();
private final ConfigurationManager configurationManager;
private final Collection repositories;
@@ -108,9 +105,7 @@
private final SingleElementCollection webConfigBuilder;
private final SingleElementCollection connectorConfigBuilder;
private final SingleElementCollection appClientConfigBuilder;
- private final SingleElementCollection ejbReferenceBuilder;
private final SingleElementCollection resourceReferenceBuilder;
- private final SingleElementCollection serviceReferenceBuilder;
private final NamespaceDrivenBuilderCollection securityBuilders;
private final NamespaceDrivenBuilderCollection serviceBuilders;
@@ -132,12 +127,10 @@
AbstractNameQuery serverName,
Collection repositories,
Collection ejbConfigBuilder,
- Collection ejbReferenceBuilder,
Collection webConfigBuilder,
Collection connectorConfigBuilder,
Collection resourceReferenceBuilder,
Collection appClientConfigBuilder,
- Collection serviceReferenceBuilder,
Collection securityBuilders,
Collection serviceBuilders,
Kernel kernel) {
@@ -151,12 +144,10 @@
ConfigurationUtil.getConfigurationManager(kernel),
repositories,
new SingleElementCollection(ejbConfigBuilder),
- new SingleElementCollection(ejbReferenceBuilder),
new SingleElementCollection(webConfigBuilder),
new SingleElementCollection(connectorConfigBuilder),
new SingleElementCollection(resourceReferenceBuilder),
new SingleElementCollection(appClientConfigBuilder),
- new SingleElementCollection(serviceReferenceBuilder),
securityBuilders,
serviceBuilders,
kernel.getNaming());
@@ -170,12 +161,10 @@
AbstractNameQuery serverName,
Collection repositories,
ModuleBuilder ejbConfigBuilder,
- EJBReferenceBuilder ejbReferenceBuilder,
ModuleBuilder webConfigBuilder,
ModuleBuilder connectorConfigBuilder,
- ResourceReferenceBuilder resourceReferenceBuilder,
+ ActivationSpecInfoLocator activationSpecInfoLocator,
ModuleBuilder appClientConfigBuilder,
- ServiceReferenceBuilder serviceReferenceBuilder,
NamespaceDrivenBuilder securityBuilder,
NamespaceDrivenBuilder serviceBuilder,
Naming naming) {
@@ -189,12 +178,10 @@
null,
repositories,
new SingleElementCollection(ejbConfigBuilder),
- new SingleElementCollection(ejbReferenceBuilder),
new SingleElementCollection(webConfigBuilder),
new SingleElementCollection(connectorConfigBuilder),
- new SingleElementCollection(resourceReferenceBuilder),
+ new SingleElementCollection(activationSpecInfoLocator),
new SingleElementCollection(appClientConfigBuilder),
- new SingleElementCollection(serviceReferenceBuilder),
securityBuilder == null? Collections.EMPTY_SET: Collections.singleton(securityBuilder),
serviceBuilder == null? Collections.EMPTY_SET: Collections.singleton(serviceBuilder),
naming);
@@ -210,25 +197,22 @@
ConfigurationManager configurationManager,
Collection repositories,
SingleElementCollection ejbConfigBuilder,
- SingleElementCollection ejbReferenceBuilder,
SingleElementCollection webConfigBuilder,
SingleElementCollection connectorConfigBuilder,
SingleElementCollection resourceReferenceBuilder,
SingleElementCollection appClientConfigBuilder,
- SingleElementCollection serviceReferenceBuilder,
Collection securityBuilders,
- Collection serviceBuilders, Naming naming) {
+ Collection serviceBuilders,
+ Naming naming) {
this.configurationManager = configurationManager;
this.repositories = repositories;
this.defaultEnvironment = defaultEnvironment;
this.ejbConfigBuilder = ejbConfigBuilder;
- this.ejbReferenceBuilder = ejbReferenceBuilder;
this.resourceReferenceBuilder = resourceReferenceBuilder;
this.webConfigBuilder = webConfigBuilder;
this.connectorConfigBuilder = connectorConfigBuilder;
this.appClientConfigBuilder = appClientConfigBuilder;
- this.serviceReferenceBuilder = serviceReferenceBuilder;
this.securityBuilders = new NamespaceDrivenBuilderCollection(securityBuilders);
this.serviceBuilders = new NamespaceDrivenBuilderCollection(serviceBuilders);
@@ -241,6 +225,11 @@
this.naming = naming;
}
+
+ public AbstractNameQuery getCorbaGBeanName() {
+ return corbaGBeanObjectName;
+ }
+
private ModuleBuilder getEjbConfigBuilder() {
return (ModuleBuilder) ejbConfigBuilder.getElement();
}
@@ -257,16 +246,8 @@
return (ModuleBuilder) appClientConfigBuilder.getElement();
}
- private EJBReferenceBuilder getEjbReferenceBuilder() {
- return (EJBReferenceBuilder) ejbReferenceBuilder.getElement();
- }
-
- private ResourceReferenceBuilder getResourceReferenceBuilder() {
- return (ResourceReferenceBuilder) resourceReferenceBuilder.getElement();
- }
-
- private ServiceReferenceBuilder getServiceReferenceBuilder() {
- return (ServiceReferenceBuilder) serviceReferenceBuilder.getElement();
+ private ActivationSpecInfoLocator getResourceReferenceBuilder() {
+ return (ActivationSpecInfoLocator) resourceReferenceBuilder.getElement();
}
public Object getDeploymentPlan(File planFile, JarFile jarFile, ModuleIDBuilder idBuilder) throws DeploymentException {
@@ -472,8 +453,8 @@
connectionTrackerObjectName,
transactionalTimerObjectName,
nonTransactionalTimerObjectName,
- corbaGBeanObjectName,
- new RefContext(getEjbReferenceBuilder(), getResourceReferenceBuilder(), getServiceReferenceBuilder()));
+ corbaGBeanObjectName
+ );
// Copy over all files that are _NOT_ modules (e.g. META-INF and APP-INF files)
Set moduleLocations = applicationInfo.getModuleLocations();
@@ -921,12 +902,10 @@
infoBuilder.addReference("Repositories", Repository.class, "Repository");
infoBuilder.addReference("EJBConfigBuilder", ModuleBuilder.class, NameFactory.MODULE_BUILDER);
- infoBuilder.addReference("EJBReferenceBuilder", EJBReferenceBuilder.class, NameFactory.MODULE_BUILDER);
infoBuilder.addReference("WebConfigBuilder", ModuleBuilder.class, NameFactory.MODULE_BUILDER);
infoBuilder.addReference("ConnectorConfigBuilder", ModuleBuilder.class, NameFactory.MODULE_BUILDER);
- infoBuilder.addReference("ResourceReferenceBuilder", ResourceReferenceBuilder.class, NameFactory.MODULE_BUILDER);
+ infoBuilder.addReference("ActivationSpecInfoLocator", ActivationSpecInfoLocator.class, NameFactory.MODULE_BUILDER);
infoBuilder.addReference("AppClientConfigBuilder", ModuleBuilder.class, NameFactory.MODULE_BUILDER);
- infoBuilder.addReference("ServiceReferenceBuilder", ServiceReferenceBuilder.class, NameFactory.MODULE_BUILDER);
infoBuilder.addReference("SecurityBuilders", NamespaceDrivenBuilder.class, NameFactory.MODULE_BUILDER);
infoBuilder.addReference("ServiceBuilders", NamespaceDrivenBuilder.class, NameFactory.MODULE_BUILDER);
@@ -944,12 +923,10 @@
"serverName",
"Repositories",
"EJBConfigBuilder",
- "EJBReferenceBuilder",
"WebConfigBuilder",
"ConnectorConfigBuilder",
- "ResourceReferenceBuilder",
+ "ActivationSpecInfoLocator",
"AppClientConfigBuilder",
- "ServiceReferenceBuilder",
"SecurityBuilders",
"ServiceBuilders",
"kernel"
Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARContext.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARContext.java?view=diff&rev=442387&r1=442386&r2=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARContext.java (original)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/EARContext.java Mon Sep 11 16:51:32 2006
@@ -34,21 +34,20 @@
* @version $Rev:386276 $ $Date$
*/
public class EARContext extends DeploymentContext {
+
+ private final AbstractNameQuery serverName;
private final AbstractNameQuery transactionManagerObjectName;
private final AbstractNameQuery connectionTrackerObjectName;
-
private final AbstractNameQuery transactedTimerName;
private final AbstractNameQuery nonTransactedTimerName;
-
private final AbstractNameQuery corbaGBeanObjectName;
- private final RefContext refContext;
- private final AbstractNameQuery serverName;
-
private final Map contextIDToPermissionsMap = new HashMap();
private AbstractName jaccManagerName;
private Object securityConfiguration;
+ private final Map messageDestinations = new HashMap();
+
public EARContext(File baseDir,
File inPlaceConfigurationDir,
Environment environment,
@@ -61,8 +60,8 @@
AbstractNameQuery connectionTrackerObjectName,
AbstractNameQuery transactedTimerName,
AbstractNameQuery nonTransactedTimerName,
- AbstractNameQuery corbaGBeanObjectName,
- RefContext refContext) throws DeploymentException {
+ AbstractNameQuery corbaGBeanObjectName
+ ) throws DeploymentException {
super(baseDir, inPlaceConfigurationDir, environment, baseName, moduleType, naming, configurationManager, repositories);
this.serverName = serverName;
@@ -71,7 +70,6 @@
this.transactedTimerName = transactedTimerName;
this.nonTransactedTimerName = nonTransactedTimerName;
this.corbaGBeanObjectName = corbaGBeanObjectName;
- this.refContext = refContext;
}
public EARContext(File baseDir,
@@ -86,8 +84,8 @@
AbstractNameQuery connectionTrackerObjectName,
AbstractNameQuery transactedTimerName,
AbstractNameQuery nonTransactedTimerName,
- AbstractNameQuery corbaGBeanObjectName,
- RefContext refContext) throws DeploymentException {
+ AbstractNameQuery corbaGBeanObjectName
+ ) throws DeploymentException {
super(baseDir, inPlaceConfigurationDir, environment, baseName, moduleType, naming, configurationManager);
this.serverName = serverName;
@@ -97,30 +95,28 @@
this.transactedTimerName = transactedTimerName;
this.nonTransactedTimerName = nonTransactedTimerName;
this.corbaGBeanObjectName = corbaGBeanObjectName;
- this.refContext = refContext;
}
public EARContext(File baseDir, File inPlaceConfigurationDir, Environment environment, ConfigurationModuleType moduleType, AbstractName baseName, EARContext parent) throws DeploymentException {
super(baseDir, inPlaceConfigurationDir, environment, baseName, moduleType, parent.getNaming(), parent.getConfigurationManager());
this.serverName = parent.getServerName();
- this.transactionManagerObjectName = parent.getTransactionManagerObjectName();
- this.connectionTrackerObjectName = parent.getConnectionTrackerObjectName();
+ this.transactionManagerObjectName = parent.getTransactionManagerName();
+ this.connectionTrackerObjectName = parent.getConnectionTrackerName();
this.transactedTimerName = parent.getTransactedTimerName();
this.nonTransactedTimerName = parent.getNonTransactedTimerName();
- this.corbaGBeanObjectName = parent.getCORBAGBeanObjectName();
- this.refContext = parent.getRefContext();
+ this.corbaGBeanObjectName = parent.getCORBAGBeanName();
}
public AbstractNameQuery getServerName() {
return serverName;
}
- public AbstractNameQuery getTransactionManagerObjectName() {
+ public AbstractNameQuery getTransactionManagerName() {
return transactionManagerObjectName;
}
- public AbstractNameQuery getConnectionTrackerObjectName() {
+ public AbstractNameQuery getConnectionTrackerName() {
return connectionTrackerObjectName;
}
@@ -132,14 +128,10 @@
return nonTransactedTimerName;
}
- public AbstractNameQuery getCORBAGBeanObjectName() {
+ public AbstractNameQuery getCORBAGBeanName() {
return corbaGBeanObjectName;
}
- public RefContext getRefContext() {
- return refContext;
- }
-
public Map getContextIDToPermissionsMap() {
return contextIDToPermissionsMap;
}
@@ -169,4 +161,13 @@
public Object getSecurityConfiguration() {
return securityConfiguration;
}
+
+ public void registerMessageDestionations(String moduleName, Map nameMap) throws DeploymentException {
+ messageDestinations.put(moduleName, nameMap);
+ }
+
+ public Map getMessageDestinations() {
+ return messageDestinations;
+ }
+
}
Added: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/HandlerInfoInfo.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/HandlerInfoInfo.java?view=auto&rev=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/HandlerInfoInfo.java (added)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/HandlerInfoInfo.java Mon Sep 11 16:51:32 2006
@@ -0,0 +1,62 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation
+ *
+ * Licensed 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.geronimo.j2ee.deployment;
+
+import java.util.Set;
+import java.util.Map;
+
+import javax.xml.namespace.QName;
+
+/**
+ * @version $Rev:$ $Date:$
+ */
+public class HandlerInfoInfo {
+ private final Set portNames;
+ private final Class handlerClass;
+ private final Map handlerConfig;
+ private final QName[] soapHeaders;
+ private final Set soapRoles;
+
+ public HandlerInfoInfo(Set portNames, Class handlerClass, Map handlerConfig, QName[] soapHeaders, Set soapRoles) {
+ this.portNames = portNames;
+ this.handlerClass = handlerClass;
+ this.handlerConfig = handlerConfig;
+ this.soapHeaders = soapHeaders;
+ this.soapRoles = soapRoles;
+ }
+
+ public Set getPortNames() {
+ return portNames;
+ }
+
+ public Class getHandlerClass() {
+ return handlerClass;
+ }
+
+ public Map getHandlerConfig() {
+ return handlerConfig;
+ }
+
+ public QName[] getSoapHeaders() {
+ return soapHeaders;
+ }
+
+ public Set getSoapRoles() {
+ return soapRoles;
+ }
+}
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/HandlerInfoInfo.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/HandlerInfoInfo.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/HandlerInfoInfo.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/Module.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/Module.java?view=diff&rev=442387&r1=442386&r2=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/Module.java (original)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/Module.java Mon Sep 11 16:51:32 2006
@@ -18,15 +18,11 @@
import java.util.jar.JarFile;
import java.net.URI;
-import java.net.URISyntaxException;
-import java.io.IOException;
-import java.io.File;
import org.apache.xmlbeans.XmlObject;
import org.apache.geronimo.kernel.config.ConfigurationModuleType;
import org.apache.geronimo.kernel.repository.Environment;
import org.apache.geronimo.deployment.util.DeploymentUtil;
-import org.apache.geronimo.deployment.DeploymentContext;
import org.apache.geronimo.gbean.AbstractName;
/**
@@ -48,8 +44,7 @@
private final String namespace;
private EARContext earContext;
-
- private URI uniqueModuleLocation;
+ private EARContext rootEarContext;
protected Module(boolean standAlone, AbstractName moduleName, Environment environment, JarFile moduleFile, String targetPath, XmlObject specDD, XmlObject vendorDD, String originalSpecDD, String namespace) {
assert targetPath != null: "targetPath is null";
@@ -145,54 +140,6 @@
DeploymentUtil.close(moduleFile);
}
- public void addClass(String fqcn, byte[] bytes, DeploymentContext context) throws IOException, URISyntaxException {
- URI location = getUniqueModuleLocation(context);
- addClass(location, fqcn, bytes, context);
- }
-
- private URI getUniqueModuleLocation(DeploymentContext context) throws IOException {
- if (uniqueModuleLocation == null) {
- URI metainfUri = URI.create("META-INF/");
- File metainfDir = context.getTargetFile(metainfUri);
- if (!metainfDir.exists()) {
- metainfDir.mkdirs();
- }
- if (!metainfDir.isDirectory()) {
- throw new IOException("META-INF directory exists but is not a directory: " + metainfDir.getAbsolutePath());
- }
- if (!metainfDir.canRead()) {
- throw new IOException("META-INF directory is not readable: " + metainfDir.getAbsolutePath());
- }
- if (!metainfDir.canWrite()) {
- throw new IOException("META-INF directory is not writable: " + metainfDir.getAbsolutePath());
- }
-
- String suffix = "";
- URI generatedUri;
- File generatedDir;
- int i = 0;
- do {
- generatedUri = metainfUri.resolve("geronimo-generated" + suffix + "/");
- generatedDir = context.getTargetFile(generatedUri);
- suffix = "" + i++;
- } while (generatedDir.exists());
- generatedDir.mkdirs();
-
- // these shouldn't ever happen, but let's check anyway
- if (!generatedDir.isDirectory()) {
- throw new IOException("Geronimo generated classes directory exists but is not a directory: " + generatedDir.getAbsolutePath());
- }
- if (!generatedDir.canRead()) {
- throw new IOException("Geronimo generated classes directory is not readable: " + generatedDir.getAbsolutePath());
- }
- if (!generatedDir.canWrite()) {
- throw new IOException("Geronimo generated classes directory is not writable: " + generatedDir.getAbsolutePath());
- }
-
- uniqueModuleLocation = generatedUri;
- }
- return uniqueModuleLocation;
- }
public EARContext getEarContext() {
return earContext;
@@ -202,5 +149,11 @@
this.earContext = earContext;
}
- public abstract void addClass(URI location, String fqcn, byte[] bytes, DeploymentContext context) throws IOException, URISyntaxException;
+ public EARContext getRootEarContext() {
+ return rootEarContext;
+ }
+
+ public void setRootEarContext(EARContext rootEarContext) {
+ this.rootEarContext = rootEarContext;
+ }
}
Added: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilder.java?view=auto&rev=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilder.java (added)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilder.java Mon Sep 11 16:51:32 2006
@@ -0,0 +1,45 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation
+ *
+ * Licensed 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.geronimo.j2ee.deployment;
+
+import java.util.Map;
+
+import org.apache.geronimo.common.DeploymentException;
+import org.apache.geronimo.kernel.config.Configuration;
+import org.apache.geronimo.kernel.repository.Environment;
+import org.apache.xmlbeans.QNameSet;
+import org.apache.xmlbeans.XmlObject;
+
+/**
+ * @version $Rev:$ $Date:$
+ */
+public interface NamingBuilder {
+
+ XmlObject[] NO_REFS = new XmlObject[] {};
+ String ENV = "env/";
+
+ void buildEnvironment(XmlObject specDD, XmlObject plan, Environment environment) throws DeploymentException;
+
+ void initContext(XmlObject specDD, XmlObject plan, Configuration localConfiguration, Configuration remoteConfiguration, Module module) throws DeploymentException;
+
+ void buildNaming(XmlObject specDD, XmlObject plan, Configuration localConfiguration, Configuration remoteConfiguration, Module module, Map componentContext) throws DeploymentException;
+
+ QNameSet getSpecQNameSet();
+
+ QNameSet getPlanQNameSet();
+}
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilder.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilder.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollection.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollection.java?view=auto&rev=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollection.java (added)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollection.java Mon Sep 11 16:51:32 2006
@@ -0,0 +1,116 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation
+ *
+ * Licensed 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.geronimo.j2ee.deployment;
+
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.Collections;
+import java.util.Map;
+
+import javax.xml.namespace.QName;
+
+import org.apache.geronimo.common.DeploymentException;
+import org.apache.geronimo.deployment.xmlbeans.XmlBeansUtil;
+import org.apache.geronimo.gbean.ReferenceCollection;
+import org.apache.geronimo.gbean.ReferenceCollectionEvent;
+import org.apache.geronimo.gbean.ReferenceCollectionListener;
+import org.apache.geronimo.kernel.config.Configuration;
+import org.apache.geronimo.kernel.repository.Environment;
+import org.apache.xmlbeans.QNameSet;
+import org.apache.xmlbeans.XmlObject;
+
+/**
+ * @version $Rev:$ $Date:$
+ */
+public class NamingBuilderCollection implements NamingBuilder {
+
+ private final Collection builders;
+ private final QName basePlanElementName;
+ private QNameSet specQNames = QNameSet.EMPTY;
+ private QNameSet planQNames = QNameSet.EMPTY;
+
+ public NamingBuilderCollection(Collection builders, final QName basePlanElementName) {
+ this.builders = builders == null? Collections.EMPTY_SET: builders;
+ this.basePlanElementName = basePlanElementName;
+ if (builders instanceof ReferenceCollection) {
+ ((ReferenceCollection)builders).addReferenceCollectionListener(new ReferenceCollectionListener() {
+
+ public void memberAdded(ReferenceCollectionEvent event) {
+ addBuilder(event.getMember());
+ }
+
+ public void memberRemoved(ReferenceCollectionEvent event) {
+ Object builder = event.getMember();
+ QNameSet builderSpecQNames = ((NamingBuilder)builder).getSpecQNameSet();
+ specQNames = specQNames.intersect(builderSpecQNames.inverse());
+ QNameSet builderPlanQNames = ((NamingBuilder)builder).getPlanQNameSet();
+ planQNames = planQNames.intersect(builderPlanQNames.inverse());
+ XmlBeansUtil.unregisterSubstitutionGroupElements(basePlanElementName, builderPlanQNames);
+ }
+ });
+ }
+ for (Iterator iterator = this.builders.iterator(); iterator.hasNext();) {
+ Object builder = iterator.next();
+ addBuilder(builder);
+ }
+ }
+
+ private void addBuilder(Object builder) {
+ QNameSet builderSpecQNames = ((NamingBuilder)builder).getSpecQNameSet();
+ if (!specQNames.isDisjoint(builderSpecQNames)) {
+ throw new IllegalArgumentException("Duplicate builderSpecQNames in builder set: " + builderSpecQNames);
+ }
+ specQNames = specQNames.union(builderSpecQNames);
+ QNameSet builderPlanQNames = ((NamingBuilder)builder).getPlanQNameSet();
+ if (!planQNames.isDisjoint(builderPlanQNames)) {
+ throw new IllegalArgumentException("Duplicate builderPlanQNames in builder set: " + builderPlanQNames);
+ }
+ planQNames = planQNames.union(builderPlanQNames);
+ //really?
+ XmlBeansUtil.registerSubstitutionGroupElements(basePlanElementName, builderPlanQNames);
+ }
+
+ public void buildEnvironment(XmlObject specDD, XmlObject plan, Environment environment) throws DeploymentException {
+ for (Iterator iterator = builders.iterator(); iterator.hasNext();) {
+ NamingBuilder namingBuilder = (NamingBuilder) iterator.next();
+ namingBuilder.buildEnvironment(specDD, plan, environment);
+ }
+ }
+
+ public void initContext(XmlObject specDD, XmlObject plan, Configuration localConfiguration, Configuration remoteConfiguration, Module module) throws DeploymentException {
+ for (Iterator iterator = builders.iterator(); iterator.hasNext();) {
+ NamingBuilder namingBuilder = (NamingBuilder) iterator.next();
+ namingBuilder.initContext(specDD, plan, localConfiguration, remoteConfiguration, module);
+ }
+ }
+
+ public void buildNaming(XmlObject specDD, XmlObject plan, Configuration localContext, Configuration remoteContext, Module module, Map componentContext) throws DeploymentException {
+ for (Iterator iterator = builders.iterator(); iterator.hasNext();) {
+ NamingBuilder namingBuilder = (NamingBuilder) iterator.next();
+ namingBuilder.buildNaming(specDD, plan, localContext, remoteContext, module, componentContext);
+ }
+ }
+
+ public QNameSet getSpecQNameSet() {
+ return specQNames;
+ }
+
+ public QNameSet getPlanQNameSet() {
+ return null;
+ }
+}
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollection.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollection.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollection.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollectionGBean.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollectionGBean.java?view=auto&rev=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollectionGBean.java (added)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollectionGBean.java Mon Sep 11 16:51:32 2006
@@ -0,0 +1,53 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation
+ *
+ * Licensed 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.geronimo.j2ee.deployment;
+
+import java.util.Collection;
+
+import javax.xml.namespace.QName;
+
+import org.apache.geronimo.gbean.GBeanInfo;
+import org.apache.geronimo.gbean.GBeanInfoBuilder;
+import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
+
+/**
+ * @version $Rev:$ $Date:$
+ */
+public class NamingBuilderCollectionGBean extends NamingBuilderCollection {
+ public NamingBuilderCollectionGBean(Collection builders, String baseElementQNameNamespaceURI, String baseElementQNameLocalPart) {
+ super(builders, new QName(baseElementQNameNamespaceURI, baseElementQNameLocalPart));
+ }
+
+ static final GBeanInfo GBEAN_INFO;
+
+ static {
+ GBeanInfoBuilder infoBuilder = GBeanInfoBuilder.createStatic(NamingBuilderCollectionGBean.class, NameFactory.MODULE_BUILDER);
+ infoBuilder.addAttribute("baseElementQNameNamespaceURI", String.class, true, true);
+ infoBuilder.addAttribute("baseElementQNameLocalPart", String.class, true, true);
+ infoBuilder.addReference("NamingBuilders", NamingBuilder.class);
+
+ infoBuilder.setConstructor(new String[] {"NamingBuilders", "baseElementQNameNamespaceURI", "baseElementQNameLocalPart"});
+
+ GBEAN_INFO = infoBuilder.getBeanInfo();
+ }
+
+ public static GBeanInfo getGBeanInfo() {
+ return GBEAN_INFO;
+ }
+}
+
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollectionGBean.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollectionGBean.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/NamingBuilderCollectionGBean.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/WebModule.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/WebModule.java?view=diff&rev=442387&r1=442386&r2=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/WebModule.java (original)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/WebModule.java Mon Sep 11 16:51:32 2006
@@ -53,14 +53,5 @@
return portMap;
}
- //TODO configid check all modules can use this form. Remove if!
- public void addClass(URI location, String fqcn, byte[] bytes, DeploymentContext context) throws IOException, URISyntaxException {
- if (getEarContext() != null) {
- getEarContext().addClass(location, fqcn, bytes);
- } else {
- context.addClass(location, fqcn, bytes);
- }
- }
-
}
Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/test/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilderTestSupport.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-j2ee-builder/src/test/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilderTestSupport.java?view=diff&rev=442387&r1=442386&r2=442387
==============================================================================
--- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/test/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilderTestSupport.java (original)
+++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/test/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilderTestSupport.java Mon Sep 11 16:51:32 2006
@@ -19,6 +19,11 @@
package org.apache.geronimo.j2ee.deployment;
+import java.io.IOException;
+import java.util.Collections;
+import java.util.Map;
+import java.util.jar.JarFile;
+
import org.apache.geronimo.common.DeploymentException;
import org.apache.geronimo.deployment.DeploymentContext;
import org.apache.geronimo.deployment.ModuleIDBuilder;
@@ -40,14 +45,6 @@
import org.apache.geronimo.kernel.repository.ImportType;
import org.apache.geronimo.testsupport.TestSupport;
-import javax.xml.namespace.QName;
-import java.io.IOException;
-import java.net.URI;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-import java.util.jar.JarFile;
-
/**
* Provides support for EAR config builder tests.
*
@@ -72,19 +69,12 @@
protected static MockConnectorConfigBuilder connectorConfigBuilder = new MockConnectorConfigBuilder();
- protected static ResourceReferenceBuilder resourceReferenceBuilder = connectorConfigBuilder;
+ protected static ActivationSpecInfoLocator activationSpecInfoLocator = connectorConfigBuilder;
protected static ModuleBuilder appClientConfigBuilder = null;
protected final static ModuleIDBuilder idBuilder = new ModuleIDBuilder();
- protected static ServiceReferenceBuilder serviceReferenceBuilder = new ServiceReferenceBuilder() {
- //it could return a Service or a Reference, we don't care
- public Object createService(Class serviceInterface, URI wsdlURI, URI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMap, List handlerInfos, Object serviceRefType, DeploymentContext deploymentContext, Module module, ClassLoader classLoader) {
- return null;
- }
- };
-
protected static final NamespaceDrivenBuilder securityBuilder = null;
protected static final NamespaceDrivenBuilder serviceBuilder = null;
@@ -147,12 +137,10 @@
null,
null,
ejbConfigBuilder,
- ejbConfigBuilder,
webConfigBuilder,
connectorConfigBuilder,
- resourceReferenceBuilder,
+ activationSpecInfoLocator,
appClientConfigBuilder,
- serviceReferenceBuilder,
securityBuilder,
serviceBuilder,
naming);
@@ -180,12 +168,10 @@
null,
null,
ejbConfigBuilder,
- ejbConfigBuilder,
webConfigBuilder,
connectorConfigBuilder,
- resourceReferenceBuilder,
+ activationSpecInfoLocator,
appClientConfigBuilder,
- serviceReferenceBuilder,
securityBuilder,
serviceBuilder,
naming);
@@ -221,12 +207,10 @@
null,
null,
ejbConfigBuilder,
- ejbConfigBuilder,
webConfigBuilder,
connectorConfigBuilder,
- resourceReferenceBuilder,
+ activationSpecInfoLocator,
appClientConfigBuilder,
- serviceReferenceBuilder,
securityBuilder,
serviceBuilder,
naming);
@@ -262,12 +246,10 @@
null,
null,
ejbConfigBuilder,
- ejbConfigBuilder,
webConfigBuilder,
connectorConfigBuilder,
- resourceReferenceBuilder,
+ activationSpecInfoLocator,
appClientConfigBuilder,
- serviceReferenceBuilder,
securityBuilder,
serviceBuilder,
naming);
@@ -303,12 +285,10 @@
null,
null,
ejbConfigBuilder,
- ejbConfigBuilder,
webConfigBuilder,
connectorConfigBuilder,
- resourceReferenceBuilder,
+ activationSpecInfoLocator,
appClientConfigBuilder,
- serviceReferenceBuilder,
securityBuilder,
serviceBuilder,
naming);
@@ -344,12 +324,10 @@
null,
null,
null,
- null,
webConfigBuilder,
connectorConfigBuilder,
- resourceReferenceBuilder,
+ activationSpecInfoLocator,
appClientConfigBuilder,
- serviceReferenceBuilder,
securityBuilder,
serviceBuilder,
naming);
@@ -384,12 +362,10 @@
null,
null,
ejbConfigBuilder,
- ejbConfigBuilder,
null,
connectorConfigBuilder,
- resourceReferenceBuilder,
+ activationSpecInfoLocator,
appClientConfigBuilder,
- serviceReferenceBuilder,
securityBuilder,
serviceBuilder,
naming);
@@ -423,12 +399,10 @@
null,
null,
ejbConfigBuilder,
- null,
webConfigBuilder,
null,
- resourceReferenceBuilder,
+ activationSpecInfoLocator,
appClientConfigBuilder,
- serviceReferenceBuilder,
securityBuilder,
serviceBuilder,
naming);