dain        2005/09/16 14:02:10

  Modified:    modules/core/src/java/org/openejb/server/ejbd EjbDaemon.java
                        EjbRequestHandler.java EjbServer.java
                        EjbServerGBean.java
  Log:

  Changed orb reference in the EJB protocol to a collection reference so it can 
be optional.  This allows us to split out the CORBA configuration from the main 
server.
  
  Revision  Changes    Path
  1.6       +4 -4      
openejb/modules/core/src/java/org/openejb/server/ejbd/EjbDaemon.java
  
  Index: EjbDaemon.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/server/ejbd/EjbDaemon.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- EjbDaemon.java    23 Mar 2005 08:23:23 -0000      1.5
  +++ EjbDaemon.java    16 Sep 2005 18:02:10 -0000      1.6
  @@ -50,6 +50,7 @@
   import java.io.ObjectOutputStream;
   import java.io.OutputStream;
   import java.net.Socket;
  +import java.util.Collection;
   import javax.ejb.EJBHome;
   import javax.ejb.EJBMetaData;
   import javax.ejb.EJBObject;
  @@ -60,7 +61,6 @@
   import org.apache.commons.logging.LogFactory;
   
   import org.openejb.ContainerIndex;
  -import org.openejb.corba.ORBRef;
   import org.openejb.client.RequestMethods;
   import org.openejb.client.ResponseCodes;
   import org.openejb.proxy.ProxyInfo;
  @@ -89,11 +89,11 @@
           this(ContainerIndex.getInstance(), null);
       }
   
  -    public EjbDaemon(ContainerIndex containerIndex, ORBRef orbRef) throws 
Exception {
  +    public EjbDaemon(ContainerIndex containerIndex, Collection orbRefs) 
throws Exception {
           clientObjectFactory = new ClientObjectFactory(containerIndex);
   
           // Request Handlers
  -        ejbHandler = new EjbRequestHandler(containerIndex, orbRef);
  +        ejbHandler = new EjbRequestHandler(containerIndex, orbRefs);
           jndiHandler = new JndiRequestHandler(containerIndex);
           authHandler = new AuthRequestHandler();
       }
  
  
  
  1.22      +12 -4     
openejb/modules/core/src/java/org/openejb/server/ejbd/EjbRequestHandler.java
  
  Index: EjbRequestHandler.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/server/ejbd/EjbRequestHandler.java,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- EjbRequestHandler.java    15 Sep 2005 06:32:00 -0000      1.21
  +++ EjbRequestHandler.java    16 Sep 2005 18:02:10 -0000      1.22
  @@ -51,6 +51,7 @@
   import java.lang.reflect.Method;
   import java.rmi.RemoteException;
   import java.util.Collection;
  +import java.util.Iterator;
   
   import javax.security.auth.Subject;
   
  @@ -75,11 +76,11 @@
   
       private static final Log log = 
LogFactory.getLog(EjbRequestHandler.class);
       private final ContainerIndex containerIndex;
  -    private final ORBRef orbRef;
  +    private final Collection orbRefs;
   
   
  -    EjbRequestHandler(ContainerIndex containerIndex, ORBRef orbRef) {
  -        this.orbRef = orbRef;
  +    EjbRequestHandler(ContainerIndex containerIndex, Collection orbRefs) {
  +        this.orbRefs = orbRefs;
   
           if (containerIndex == null) {
               containerIndex = ContainerIndex.getInstance();
  @@ -92,6 +93,13 @@
   
           EJBObjectInputStream in = (EJBObjectInputStream) input;
   
  +        ORBRef orbRef = null;
  +        if (orbRefs != null) {
  +            Iterator iterator = orbRefs.iterator();
  +            if (iterator.hasNext()) {
  +                orbRef = (ORBRef) iterator.next();
  +            }
  +        }
           EJBInvocationStream req = new EJBInvocationStream(orbRef);
   
           EJBResponse res = new EJBResponse();
  
  
  
  1.7       +8 -8      
openejb/modules/core/src/java/org/openejb/server/ejbd/EjbServer.java
  
  Index: EjbServer.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/server/ejbd/EjbServer.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- EjbServer.java    6 Sep 2005 08:09:45 -0000       1.6
  +++ EjbServer.java    16 Sep 2005 18:02:10 -0000      1.7
  @@ -45,17 +45,17 @@
   package org.openejb.server.ejbd;
   
   
  +import java.io.IOException;
  +import java.net.Socket;
  +import java.util.Collection;
  +import java.util.Properties;
  +
   import org.activeio.xnet.ServerService;
   import org.activeio.xnet.ServiceException;
   import org.openejb.ContainerIndex;
   import org.openejb.OpenEJB;
  -import org.openejb.corba.ORBRef;
   import org.openejb.server.ServerFederation;
   
  -import java.io.IOException;
  -import java.net.Socket;
  -import java.util.Properties;
  -
   /**
    * @since 11/25/2001
    */
  @@ -73,8 +73,8 @@
           ejbDaemon = EjbDaemon.getEjbDaemon();
       }
   
  -    public EjbServer(ContainerIndex containerIndex, ORBRef orbRef) throws 
Exception {
  -        ejbDaemon = new EjbDaemon(containerIndex, orbRef);
  +    public EjbServer(ContainerIndex containerIndex, Collection orbRefs) 
throws Exception {
  +        ejbDaemon = new EjbDaemon(containerIndex, orbRefs);
       }
   
       public void init(Properties props) throws Exception {
  
  
  
  1.6       +3 -3      
openejb/modules/core/src/java/org/openejb/server/ejbd/EjbServerGBean.java
  
  Index: EjbServerGBean.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/server/ejbd/EjbServerGBean.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- EjbServerGBean.java       6 Sep 2005 08:09:45 -0000       1.5
  +++ EjbServerGBean.java       16 Sep 2005 18:02:10 -0000      1.6
  @@ -67,9 +67,9 @@
   
           infoFactory.addInterface(SocketService.class);
           infoFactory.addReference("ContainerIndex", ContainerIndex.class, 
NameFactory.GERONIMO_SERVICE);
  -        infoFactory.addReference("ORBRef", ORBRef.class, 
NameFactory.CORBA_SERVICE);
  +        infoFactory.addReference("ORBRefs", ORBRef.class, 
NameFactory.CORBA_SERVICE);
   
  -        infoFactory.setConstructor(new String[]{"ContainerIndex", "ORBRef"});
  +        infoFactory.setConstructor(new String[]{"ContainerIndex", 
"ORBRefs"});
   
           GBEAN_INFO = infoFactory.getBeanInfo();
       }
  
  
  

Reply via email to