Title: [2547] branches/v2_1/openejb2/modules/openejb-builder/src/schema: updates to naming.

Diff

Modified: branches/v2_1/openejb2/modules/core/src/java/org/openejb/corba/proxy/CORBAProxyReference.java (2546 => 2547)

--- branches/v2_1/openejb2/modules/core/src/java/org/openejb/corba/proxy/CORBAProxyReference.java	2006-03-12 09:35:41 UTC (rev 2546)
+++ branches/v2_1/openejb2/modules/core/src/java/org/openejb/corba/proxy/CORBAProxyReference.java	2006-03-12 22:02:19 UTC (rev 2547)
@@ -47,48 +47,55 @@
  */
 package org.openejb.corba.proxy;
 
-import java.net.URI;
-import javax.management.ObjectName;
-
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-
+import org.apache.geronimo.gbean.AbstractName;
+import org.apache.geronimo.gbean.AbstractNameQuery;
+import org.apache.geronimo.kernel.GBeanNotFoundException;
 import org.apache.geronimo.kernel.Kernel;
-import org.apache.geronimo.naming.reference.SimpleAwareReference;
+import org.apache.geronimo.kernel.repository.Artifact;
+import org.apache.geronimo.naming.reference.ConfigurationAwareReference;
 
+import javax.naming.NameNotFoundException;
+import java.net.URI;
 
+
 /**
  * @version $Revision$ $Date$
  */
-public final class CORBAProxyReference extends SimpleAwareReference {
+public final class CORBAProxyReference extends ConfigurationAwareReference {
 
     private final static Log log = LogFactory.getLog(CORBAProxyReference.class);
 
     private final URI nsCorbaloc;
     private final String objectName;
-    private final ObjectName containerName;
     private final String home;
 
-    public CORBAProxyReference(URI corbaURL, String objectName, ObjectName containerName, String home) {
-        this.nsCorbaloc = corbaURL;
+    public CORBAProxyReference(Artifact configId, AbstractNameQuery abstractNameQuery, URI nsCorbaloc, String objectName, String home) {
+        super(configId, abstractNameQuery);
+        this.nsCorbaloc = nsCorbaloc;
         this.objectName = objectName;
-        this.containerName = containerName;
         this.home = home;
-
-        if (log.isDebugEnabled()) log.debug("<init> " + corbaURL.toString() + ", " + objectName + ", " + containerName + ", " + home);
+        if (log.isDebugEnabled()) log.debug("<init> " + nsCorbaloc.toString() + ", " + objectName + ", " + abstractNameQuery + ", " + home);
     }
 
     public String getClassName() {
         return home;
     }
 
-    public Object getContent() {
+    public Object getContent() throws NameNotFoundException {
 
-        if (log.isDebugEnabled()) log.debug("Obtaining home from " + nsCorbaloc.toString() + ", " + objectName + ", " + containerName + ", " + home);
-
+        if (log.isDebugEnabled()) log.debug("Obtaining home from " + nsCorbaloc.toString() + ", " + objectName + ", " + abstractNameQuery + ", " + home);
+        AbstractName containerName;
+        try {
+            containerName = resolveTargetName();
+        } catch (GBeanNotFoundException e) {
+            throw (NameNotFoundException)new NameNotFoundException("Could not resolve gbean from name query: " + abstractNameQuery).initCause(e);
+        }
         Kernel kernel = getKernel();
-        Object proxy = null;
+        Object proxy;
         try {
+            //TODO configid objectname might well be wrong kind of thing.
             proxy = kernel.invoke(containerName, "getHome", new Object[]{nsCorbaloc, objectName}, new String[]{URI.class.getName(), String.class.getName()});
         } catch (Exception e) {
             log.error("Could not get proxy from " + containerName, e);

Modified: branches/v2_1/openejb2/modules/openejb-builder/src/java/org/openejb/deployment/OpenEJBReferenceBuilder.java (2546 => 2547)

--- branches/v2_1/openejb2/modules/openejb-builder/src/java/org/openejb/deployment/OpenEJBReferenceBuilder.java	2006-03-12 09:35:41 UTC (rev 2546)
+++ branches/v2_1/openejb2/modules/openejb-builder/src/java/org/openejb/deployment/OpenEJBReferenceBuilder.java	2006-03-12 22:02:19 UTC (rev 2547)
@@ -52,6 +52,7 @@
 import java.util.Collection;
 import java.util.ArrayList;
 import java.util.Iterator;
+import java.util.Collections;
 import javax.naming.Reference;
 import javax.management.ObjectName;
 
@@ -63,9 +64,10 @@
 import org.apache.geronimo.gbean.GBeanData;
 import org.apache.geronimo.gbean.GBeanInfo;
 import org.apache.geronimo.gbean.GBeanInfoBuilder;
+import org.apache.geronimo.gbean.AbstractNameQuery;
 import org.apache.geronimo.gbean.AbstractName;
 import org.apache.geronimo.kernel.GBeanNotFoundException;
-import org.apache.geronimo.kernel.jmx.JMXUtil;
+import org.apache.geronimo.kernel.repository.Artifact;
 import org.openejb.proxy.EJBProxyReference;
 import org.openejb.proxy.ProxyInfo;
 import org.openejb.corba.proxy.CORBAProxyReference;
@@ -75,9 +77,9 @@
  * @version $Revision$ $Date$
  */
 public class OpenEJBReferenceBuilder implements EJBReferenceBuilder {
-    private final static ObjectName STATELESS = JMXUtil.getObjectName("*:j2eeType=StatelessSessionBean,*");
-    private final static ObjectName STATEFUL = JMXUtil.getObjectName("*:j2eeType=StatefulSessionBean,*");
-    private final static ObjectName ENTITY = JMXUtil.getObjectName("*:j2eeType=EntityBean,*");
+    private final static AbstractNameQuery STATELESS = new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.STATELESS_SESSION_BEAN));
+    private final static AbstractNameQuery STATEFUL = new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.STATEFUL_SESSION_BEAN));
+    private final static AbstractNameQuery ENTITY = new AbstractNameQuery(null, Collections.singletonMap(NameFactory.J2EE_TYPE, NameFactory.ENTITY_BEAN));
 
     public Reference createEJBLocalReference(String objectName, GBeanData gbeanData, boolean session, String localHome, String local) throws DeploymentException {
         if (gbeanData != null) {
@@ -115,8 +117,8 @@
         return buildRemoteReference(objectName, session, home, remote);
     }
 
-    public Reference createCORBAReference(URI corbaURL, String objectName, AbstractName containerName, String home) throws DeploymentException {
-        return new CORBAProxyReference(corbaURL, objectName, containerName, home);
+    public Reference createCORBAReference(Artifact configId, AbstractNameQuery containerNameQuery, URI nsCorbaloc, String objectName, String home) throws DeploymentException {
+        return new CORBAProxyReference(configId, containerNameQuery, nsCorbaloc, objectName, home);
     }
 
     public Object createHandleDelegateReference() {
@@ -153,15 +155,15 @@
         }
         Collection matches = new ArrayList();
         for (Iterator iterator = gbeans.iterator(); iterator.hasNext();) {
-            ObjectName objectName = (ObjectName) iterator.next();
-            GBeanData data = ""
+            AbstractName abstractName = (AbstractName) iterator.next();
+            GBeanData data;
             try {
-                data = ""
+                data = ""
             } catch (GBeanNotFoundException e) {
                 throw new DeploymentException("We just got this ejb name out of a query! It must be there!");
             }
             if (matchesProxyInfo(data, isRemote, home, remote)) {
-                matches.add(objectName);
+                matches.add(abstractName);
             }
         }
         if (matches.isEmpty()) {

Modified: branches/v2_1/openejb2/modules/openejb-builder/src/schema/openejb-jar-2.1.xsd (2546 => 2547)

--- branches/v2_1/openejb2/modules/openejb-builder/src/schema/openejb-jar-2.1.xsd	2006-03-12 09:35:41 UTC (rev 2546)
+++ branches/v2_1/openejb2/modules/openejb-builder/src/schema/openejb-jar-2.1.xsd	2006-03-12 22:02:19 UTC (rev 2547)
@@ -49,7 +49,7 @@
 <xs:schema
     xmlns:openejb="http://www.openejb.org/xml/ns/openejb-jar-2.1"
     targetNamespace="http://www.openejb.org/xml/ns/openejb-jar-2.1"
-    xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.0"
+    xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.1"
     xmlns:security="http://geronimo.apache.org/xml/ns/security-1.1"
     xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1"
     xmlns:pkgen="http://www.openejb.org/xml/ns/pkgen-2.0"
@@ -58,7 +58,7 @@
     attributeFormDefault="unqualified"
     version="1.0">
 
-    <xs:import namespace="http://geronimo.apache.org/xml/ns/naming-1.0" schemaLocation="geronimo-naming-1.0.xsd"/>
+    <xs:import namespace="http://geronimo.apache.org/xml/ns/naming-1.1" schemaLocation="geronimo-naming-1.1.xsd"/>
     <xs:import namespace="http://geronimo.apache.org/xml/ns/security-1.1" schemaLocation="geronimo-security-1.1.xsd"/>
     <xs:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.1" schemaLocation="geronimo-config-1.1.xsd"/>
     <xs:import namespace="http://www.openejb.org/xml/ns/pkgen-2.0" schemaLocation="openejb-pkgen-2.0.xsd"/>

Modified: branches/v2_1/openejb2/modules/openejb-builder/src/test/org/openejb/deployment/DeploymentTestContants.java (2546 => 2547)

--- branches/v2_1/openejb2/modules/openejb-builder/src/test/org/openejb/deployment/DeploymentTestContants.java	2006-03-12 09:35:41 UTC (rev 2546)
+++ branches/v2_1/openejb2/modules/openejb-builder/src/test/org/openejb/deployment/DeploymentTestContants.java	2006-03-12 22:02:19 UTC (rev 2547)
@@ -63,6 +63,7 @@
 import org.apache.geronimo.j2ee.deployment.ServiceReferenceBuilder;
 import org.apache.geronimo.j2ee.deployment.Module;
 import org.apache.geronimo.gbean.GBeanData;
+import org.apache.geronimo.gbean.AbstractNameQuery;
 import org.apache.geronimo.deployment.DeploymentContext;
 
 /**
@@ -74,11 +75,11 @@
     public static final String SERVER_NAME = DeploymentHelper.SERVER_NAME;
 
     public static final ResourceReferenceBuilder resourceReferenceBuilder = new ResourceReferenceBuilder() {
-        public Reference createResourceRef(String containerId, Class iface) {
+        public Reference createResourceRef(AbstractNameQuery containerId, Class iface, Configuration configuration) {
             return null;
         }
 
-        public Reference createAdminObjectRef(String containerId, Class iface) {
+        public Reference createAdminObjectRef(AbstractNameQuery containerId, Class iface, Configuration configuration) {
             return null;
         }
 

Reply via email to