User: fleury  
  Date: 00/08/14 12:30:41

  Modified:    src/main/org/jboss/ejb/plugins/jrmp/server
                        JRMPContainerInvoker.java
  Log:
  Ironing out the EJBMetaData problem (simpler code in metadata ) and more readability 
in JRMP-CI
  
  Revision  Changes    Path
  1.14      +43 -6     
jboss/src/main/org/jboss/ejb/plugins/jrmp/server/JRMPContainerInvoker.java
  
  Index: JRMPContainerInvoker.java
  ===================================================================
  RCS file: 
/products/cvs/ejboss/jboss/src/main/org/jboss/ejb/plugins/jrmp/server/JRMPContainerInvoker.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- JRMPContainerInvoker.java 2000/08/14 15:08:33     1.13
  +++ JRMPContainerInvoker.java 2000/08/14 19:30:41     1.14
  @@ -71,7 +71,7 @@
    *      @author Rickard �berg ([EMAIL PROTECTED])
    *           @author <a href="mailto:[EMAIL PROTECTED]">Sebastien 
Alborini</a>
    *      @author <a href="mailto:[EMAIL PROTECTED]">Marc Fleury</a>
  - *      @version $Revision: 1.13 $
  + *      @version $Revision: 1.14 $
    */
   public abstract class JRMPContainerInvoker
      extends RemoteServer
  @@ -235,17 +235,54 @@
           homeMethodInvokerMap.put(new 
Integer(RemoteMethodInvocation.calculateHash(getEJBObjectMethod)),getEJBObjectMethod);
         }
         catch (Exception e) {e.printStackTrace();}
  +      
  +      
         // Create metadata
  +      
  +       /**
  +         Constructor signature is  
  +           
  +              public EJBMetaDataImpl(Class remote, 
  +                                                             Class home, 
  +                                                             Class pkClass,
  +                                                         boolean session, 
  +                                                             boolean 
statelessSession, 
  +                                                             HomeHandle homeHandle)
  +       */
  +        
         if (container.getBeanMetaData() instanceof EntityMetaData)
         {
  -         ejbMetaData = new 
EJBMetaDataImpl(((ContainerInvokerContainer)container).getRemoteClass(), 
((ContainerInvokerContainer)container).getHomeClass(), 
container.getClassLoader().loadClass(((EntityMetaData)container.getBeanMetaData()).getPrimaryKeyClass()),
 false, false, new HomeHandleImpl(jndiName));
  +         ejbMetaData = new EJBMetaDataImpl(
  +                                                                             
((ContainerInvokerContainer)container).getRemoteClass(), 
  +                                                                             
((ContainerInvokerContainer)container).getHomeClass(), 
  +                                                                             
container.getClassLoader().loadClass(((EntityMetaData)container.getBeanMetaData()).getPrimaryKeyClass()),
 
  +                                                                             false, 
//Session 
  +                                                                             false, 
//Stateless
  +                                                                             new 
HomeHandleImpl(jndiName));
         }
         else
         {
  -         if (((SessionMetaData)container.getBeanMetaData()).isStateless())
  -            ejbMetaData = new 
EJBMetaDataImpl(((ContainerInvokerContainer)container).getRemoteClass(), 
((ContainerInvokerContainer)container).getHomeClass(), null, true, false, new 
HomeHandleImpl(jndiName));
  -         else
  -            ejbMetaData = new 
EJBMetaDataImpl(((ContainerInvokerContainer)container).getRemoteClass(), 
((ContainerInvokerContainer)container).getHomeClass(), null, true, true, new 
HomeHandleImpl(jndiName));
  +         if (((SessionMetaData)container.getBeanMetaData()).isStateless()) {
  +             
  +            ejbMetaData = new EJBMetaDataImpl(
  +                                                                             
((ContainerInvokerContainer)container).getRemoteClass(), 
  +                                                                             
((ContainerInvokerContainer)container).getHomeClass(), 
  +                                                                             null, 
//No PK
  +                                                                             true, 
//Session
  +                                                                             true, 
//Stateless
  +                                                                             new 
HomeHandleImpl(jndiName));
  +         }
  +         // we are stateful
  +         else  {
  +             
  +            ejbMetaData = new EJBMetaDataImpl(
  +                                                                             
((ContainerInvokerContainer)container).getRemoteClass(), 
  +                                        
((ContainerInvokerContainer)container).getHomeClass(), 
  +                                        null, //No PK 
  +                                        true, //Session
  +                                        false,//Stateless 
  +                                        new HomeHandleImpl(jndiName));
  +        }
         }      
   
      }
  
  
  

Reply via email to