hammant     2003/02/01 03:33:50

  Modified:    altrmi   base.xml
               altrmi/src/java/org/apache/excalibur/altrmi/client
                        InterfaceLookupFactory.java
               altrmi/src/java/org/apache/excalibur/altrmi/client/impl
                        AbstractFactory.java AbstractFactoryHelper.java
                        ClientSideClassFactory.java DefaultProxyHelper.java
                        DynamicClassFactory.java
                        ServerSideClassFactory.java
               altrmi/src/java/org/apache/excalibur/altrmi/client/impl/naming
                        DefaultContext.java
               altrmi/src/java/org/apache/excalibur/altrmi/client/impl/rmi
                        RmiFactoryHelper.java
               altrmi/src/java/org/apache/excalibur/altrmi/client/impl/socket
                        SocketCustomStreamFactoryHelper.java
                        SocketObjectStreamFactoryHelper.java
               altrmi/src/java/org/apache/excalibur/altrmi/common
                        ClassReply.java ProxyGenerator.java
               altrmi/src/java/org/apache/excalibur/altrmi/generator
                        AbstractProxyGenerator.java
                        BCELProxyGeneratorImpl.java ProxyGeneratorImpl.java
               altrmi/src/java/org/apache/excalibur/altrmi/generator/ant
                        ProxyGenerationTask.java
               altrmi/src/java/org/apache/excalibur/altrmi/server
                        ClassRetriever.java
               altrmi/src/java/org/apache/excalibur/altrmi/server/impl
                        DefaultMethodInvocationHandler.java
               altrmi/src/java/org/apache/excalibur/altrmi/server/impl/adapters
                        InvocationHandlerAdapter.java
               altrmi/src/java/org/apache/excalibur/altrmi/server/impl/callback
                        CallbackServerClassFactory.java
               
altrmi/src/java/org/apache/excalibur/altrmi/server/impl/callback/socket
                        CallbackEnabledSocketCustomStreamReadWriter.java
               
altrmi/src/java/org/apache/excalibur/altrmi/server/impl/classretrievers
                        AbstractClassRetriever.java
                        AbstractDynamicGeneratorClassRetriever.java
               altrmi/src/test/org/apache/excalibur/altrmi/test
                        AbstractHelloCallBackTestCase.java
               altrmi/src/test/org/apache/excalibur/altrmi/test/proxies
                        CodedProxyTestInterfaceProxy.java
               altrmi/src/test/org/apache/excalibur/altrmi/test/socket
                        CallbackEnabledCustomStreamTestCase.java
  Log:
  Removal of bean/interface separated client side proxy classes.  Start of 
Callback facade rework.
  
  Revision  Changes    Path
  1.12      +7 -2      jakarta-avalon-excalibur/altrmi/base.xml
  
  Index: base.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/altrmi/base.xml,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- base.xml  28 Jan 2003 21:14:49 -0000      1.11
  +++ base.xml  1 Feb 2003 11:33:47 -0000       1.12
  @@ -49,14 +49,17 @@
       <altrmiproxies genname="Hello" srcgendir="${build.home}/genjava" 
           classgendir="${build.home}/genclasses" verbose="true"
           interfaces="org.apache.excalibur.altrmi.test.TestInterface" 
  -        
additionalfacades="org.apache.excalibur.altrmi.test.TestInterface3,org.apache.excalibur.altrmi.test.TestInterface2">
  +        
additionalfacades="org.apache.excalibur.altrmi.test.TestInterface3,org.apache.excalibur.altrmi.test.TestInterface2"
  +        
callbackfacades="org.apache.excalibur.altrmi.test.TestCallBackListener">
         <classpath>
           <pathelement location="${build.home}/classes"/>
           <pathelement location="${build.home}/testclasses"/>            
         </classpath>
       </altrmiproxies> 
   
  -    <altrmiproxies genname="MyTestCallBackListener" 
srcgendir="${build.home}/genjava" 
  +<!--
  +
  +    <altrmiproxies genname="CallbackEnabledCustomStreamTestCase" 
srcgendir="${build.home}/genjava" 
           classgendir="${build.home}/genclasses" verbose="true" 
           interfaces="org.apache.excalibur.altrmi.test.TestCallBackListener">
         <classpath>
  @@ -64,6 +67,8 @@
           <pathelement location="${build.home}/testclasses"/>            
         </classpath>
       </altrmiproxies>     
  +
  +-->
       
     </target>
   
  
  
  
  1.4       +2 -4      
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/InterfaceLookupFactory.java
  
  Index: InterfaceLookupFactory.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/InterfaceLookupFactory.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- InterfaceLookupFactory.java       9 Jan 2003 22:55:09 -0000       1.3
  +++ InterfaceLookupFactory.java       1 Feb 2003 11:33:47 -0000       1.4
  @@ -28,11 +28,9 @@
        *   "SocketCustomStream:abcde.com:1235:C:NBO"
        *   "RMI:abcde.com:1236:S:NBO"
        *
  -     *   S:BO and alike is
  +     *   :S: and alike is
        *    - "S" for server side proxy classes
        *    - "C" for client side proxy classes
  -     *    - "BO" is BeanOnly (not castable to the interface)
  -     *    - "NBO" is NotBeanOnly (castable to the interface)
        *
        * @param factoryString
        * @param optimize
  
  
  
  1.3       +21 -49    
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/AbstractFactory.java
  
  Index: AbstractFactory.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/AbstractFactory.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AbstractFactory.java      12 Jan 2003 12:37:18 -0000      1.2
  +++ AbstractFactory.java      1 Feb 2003 11:33:47 -0000       1.3
  @@ -7,30 +7,28 @@
    */
   package org.apache.excalibur.altrmi.client.impl;
   
  -import java.io.IOException;
  -import java.lang.ref.WeakReference;
  -import java.util.HashMap;
  -import java.rmi.server.UID;
  -
  -
  +import org.apache.excalibur.altrmi.client.ClientInvocationHandler;
   import org.apache.excalibur.altrmi.client.Factory;
   import org.apache.excalibur.altrmi.client.HostContext;
   import org.apache.excalibur.altrmi.client.Proxy;
  -import org.apache.excalibur.altrmi.client.ClientInvocationHandler;
  -import org.apache.excalibur.altrmi.common.OpenConnectionRequest;
  -import org.apache.excalibur.altrmi.common.SameVMReply;
  -import org.apache.excalibur.altrmi.common.Reply;
  -import org.apache.excalibur.altrmi.common.NotPublishedReply;
  -import org.apache.excalibur.altrmi.common.ReplyConstants;
  -import org.apache.excalibur.altrmi.common.LookupRequest;
  -import org.apache.excalibur.altrmi.common.ConnectionException;
   import org.apache.excalibur.altrmi.common.Authentication;
  +import org.apache.excalibur.altrmi.common.ConnectionException;
   import org.apache.excalibur.altrmi.common.ExceptionReply;
  -import org.apache.excalibur.altrmi.common.LookupReply;
  +import org.apache.excalibur.altrmi.common.FacadeRefHolder;
   import org.apache.excalibur.altrmi.common.ListReply;
   import org.apache.excalibur.altrmi.common.ListRequest;
  -import org.apache.excalibur.altrmi.common.FacadeRefHolder;
  +import org.apache.excalibur.altrmi.common.LookupReply;
  +import org.apache.excalibur.altrmi.common.LookupRequest;
  +import org.apache.excalibur.altrmi.common.NotPublishedReply;
   import org.apache.excalibur.altrmi.common.OpenConnectionReply;
  +import org.apache.excalibur.altrmi.common.OpenConnectionRequest;
  +import org.apache.excalibur.altrmi.common.Reply;
  +import org.apache.excalibur.altrmi.common.ReplyConstants;
  +import org.apache.excalibur.altrmi.common.SameVMReply;
  +
  +import java.lang.ref.WeakReference;
  +import java.rmi.server.UID;
  +import java.util.HashMap;
   
   
   /**
  @@ -48,35 +46,10 @@
       protected AbstractHostContext m_hostContext;
       protected ClientInvocationHandler m_clientInvocationHandler;
       protected final HashMap m_refObjs = new HashMap();
  -    private final boolean m_beanOnly;
       private transient String m_textToSign;
       protected Long m_session;
   
       /**
  -     * Constructor AbstractFactory
  -     *
  -     *
  -     * @param beanOnly
  -     *
  -     */
  -    public AbstractFactory( boolean beanOnly )
  -    {
  -        m_beanOnly = beanOnly;
  -    }
  -
  -    /**
  -     * Method isBeanOnly
  -     *
  -     *
  -     * @return
  -     *
  -     */
  -    public final boolean isBeanOnly()
  -    {
  -        return m_beanOnly;
  -    }
  -
  -    /**
        * Set the HostContext (defauts to optimize = true)
        * @param hostContext the host context
        * @throws ConnectionException if a problem
  @@ -224,7 +197,7 @@
                                                                
m_clientInvocationHandler,
                                                                
publishedServiceName, "Main",
                                                                
lr.getReferenceID(), m_session );
  -        Object retVal = getInstance( publishedServiceName, "Main", baseObj, 
isBeanOnly() );
  +        Object retVal = getInstance( publishedServiceName, "Main", baseObj );
   
           baseObj.registerImplObject( retVal );
   
  @@ -232,12 +205,11 @@
       }
   
       protected abstract Class getFacadeClass(
  -        String publishedServiceName, String objectName, boolean beanOnly )
  +        String publishedServiceName, String objectName)
           throws ConnectionException, ClassNotFoundException;
   
       protected abstract Object getInstance(
  -        String publishedServiceName, String objectName, DefaultProxyHelper 
proxyHelper,
  -        boolean beanOnly ) throws ConnectionException;
  +        String publishedServiceName, String objectName, DefaultProxyHelper 
proxyHelper) throws ConnectionException;
   
       /**
        * Method registerReferenceObject
  @@ -409,9 +381,9 @@
   
                       if( getReferenceID( proxy ) != null )
                       {
  -                        //The stripping "AltrmiGenerated2" from the proxy 
names generated by
  -                        //ProxyGenerator's:- "AltrmiGenerated2".length()=16
  -                        String objName = 
args[i].getClass().getName().substring( 16 );
  +                        //The stripping "AltrmiGenerated" from the proxy 
names generated by
  +                        //ProxyGenerator's:- "AltrmiGenerated".length()=15
  +                        String objName = 
args[i].getClass().getName().substring( 15 );
   
                           args[i]= makeFacadeRefHolder( proxy, objName );
                       }
  
  
  
  1.9       +4 -4      
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/AbstractFactoryHelper.java
  
  Index: AbstractFactoryHelper.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/AbstractFactoryHelper.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- AbstractFactoryHelper.java        9 Jan 2003 22:55:09 -0000       1.8
  +++ AbstractFactoryHelper.java        1 Feb 2003 11:33:47 -0000       1.9
  @@ -42,16 +42,16 @@
           return retval;
       }
   
  -    protected Factory createFactory( String type, boolean beanOnly )
  +    protected Factory createFactory( String type )
       {
   
           if( type.equalsIgnoreCase( "s" ) )
           {
  -            return new ServerSideClassFactory( beanOnly );
  +            return new ServerSideClassFactory();
           }
           else if( type.equalsIgnoreCase( "c" ) )
           {
  -            return new ClientSideClassFactory( beanOnly );
  +            return new ClientSideClassFactory();
           }
           else
           {
  
  
  
  1.2       +13 -15    
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/ClientSideClassFactory.java
  
  Index: ClientSideClassFactory.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/ClientSideClassFactory.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ClientSideClassFactory.java       9 Jan 2003 22:55:28 -0000       1.1
  +++ ClientSideClassFactory.java       1 Feb 2003 11:33:47 -0000       1.2
  @@ -25,27 +25,25 @@
        * Constructor ClientSideClassFactory
        *
        *
  -     * @param beanOnly
  +     * @param unused
  +     * @deprecated
        *
        */
  -    public ClientSideClassFactory( boolean beanOnly )
  +    public ClientSideClassFactory( boolean unused )
  +    {
  +        // unused.
  +    }
  +
  +    public ClientSideClassFactory()
       {
  -        super( beanOnly );
       }
   
       protected Class getFacadeClass(
  -        String publishedServiceName, String objectName, boolean beanOnly )
  +        String publishedServiceName, String objectName)
           throws ConnectionException, ClassNotFoundException
       {
   
  -        String code = "2";
  -
  -        if( beanOnly )
  -        {
  -            code = "";
  -        }
  -
  -        String className = "AltrmiGenerated" + code + publishedServiceName + 
"_" + objectName;
  +        String className = "AltrmiGenerated" + publishedServiceName + "_" + 
objectName;
   
           try {
               return 
Thread.currentThread().getContextClassLoader().loadClass(className);
  @@ -67,13 +65,13 @@
        *
        */
       protected Object getInstance(
  -        String publishedServiceName, String objectName, DefaultProxyHelper 
proxyHelper, boolean beanOnly )
  +        String publishedServiceName, String objectName, DefaultProxyHelper 
proxyHelper)
           throws ConnectionException
       {
   
           try
           {
  -            Class clazz = getFacadeClass( publishedServiceName, objectName, 
beanOnly );
  +            Class clazz = getFacadeClass( publishedServiceName, objectName);
               Constructor[] constructors = clazz.getConstructors();
               Object retVal = constructors[ 0 ].newInstance( new 
Object[]{proxyHelper} );
   
  
  
  
  1.22      +3 -5      
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/DefaultProxyHelper.java
  
  Index: DefaultProxyHelper.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/DefaultProxyHelper.java,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- DefaultProxyHelper.java   19 Jan 2003 11:09:59 -0000      1.21
  +++ DefaultProxyHelper.java   1 Feb 2003 11:33:47 -0000       1.22
  @@ -160,8 +160,7 @@
                                                                        
mfr.getObjectName(), ref,
                                                                        
m_session );
                   Object retFacade = m_altrmiFactory.getInstance( 
m_publishedServiceName,
  -                                                               
mfr.getObjectName(), pHelper,
  -                                                               
m_altrmiFactory.isBeanOnly() );
  +                                                               
mfr.getObjectName(), pHelper);
   
                   pHelper.registerImplObject( retFacade );
   
  @@ -205,8 +204,7 @@
                           try
                           {
                               retFacade = m_altrmiFactory.getInstance( 
m_publishedServiceName,
  -                                                                    
objectNames[ i ], bo2,
  -                                                                    
m_altrmiFactory.isBeanOnly() );
  +                                                                    
objectNames[ i ], bo2);
                           }
                           catch( Exception e )
                           {
  
  
  
  1.2       +11 -9     
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/DynamicClassFactory.java
  
  Index: DynamicClassFactory.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/DynamicClassFactory.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DynamicClassFactory.java  9 Jan 2003 22:55:28 -0000       1.1
  +++ DynamicClassFactory.java  1 Feb 2003 11:33:47 -0000       1.2
  @@ -73,21 +73,24 @@
       //-------Constructors---------//
       /**
        * Constructor DynamicClassFactory
  -     * @param beanOnly
  +     * @param unused
        */
  -    public DynamicClassFactory(boolean beanOnly)
  +    public DynamicClassFactory(boolean unused)
  +    {
  +
  +    }
  +
  +    public DynamicClassFactory()
       {
  -        super(beanOnly);
       }
   
       //-------AbstractFactory Overrides------//
       /**
  -     * @see 
org.apache.excalibur.altrmi.client.impl.AbstractFactory#getFacadeClass(String, 
String, boolean)
  +     * @see 
org.apache.excalibur.altrmi.client.impl.AbstractFactory#getFacadeClass(String, 
String)
        */
       protected Class getFacadeClass(
           String publishedServiceName,
  -        String objectName,
  -        boolean beanOnly)
  +        String objectName)
           throws ConnectionException, ClassNotFoundException
       {
           //NOT USED
  @@ -95,13 +98,12 @@
       }
   
       /**
  -     * @see 
org.apache.excalibur.altrmi.client.impl.AbstractFactory#getInstance(String, 
String, DefaultProxyHelper, boolean)
  +     * @see 
org.apache.excalibur.altrmi.client.impl.AbstractFactory#getInstance(String, 
String, DefaultProxyHelper)
        */
       protected Object getInstance(
           String publishedServiceName,
           String objectName,
  -        DefaultProxyHelper proxyHelper,
  -        boolean beanOnly)
  +        DefaultProxyHelper proxyHelper)
           throws ConnectionException
       {
           return new DynamicStub(publishedServiceName,objectName,proxyHelper);
  
  
  
  1.2       +18 -44    
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/ServerSideClassFactory.java
  
  Index: ServerSideClassFactory.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/ServerSideClassFactory.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ServerSideClassFactory.java       9 Jan 2003 22:55:28 -0000       1.1
  +++ ServerSideClassFactory.java       1 Feb 2003 11:33:47 -0000       1.2
  @@ -35,34 +35,30 @@
        * Constructor ServerSideClassFactory
        *
        *
  -     * @param beanOnly
  +     * @param unused
  +     * @deprecated
        *
        */
  -    public ServerSideClassFactory( boolean beanOnly )
  +    public ServerSideClassFactory( boolean unused )
  +    {
  +        // boolean not used now.
  +    }
  +
  +    public ServerSideClassFactory()
       {
  -        super( beanOnly );
       }
   
       protected Class getFacadeClass(
  -        String publishedServiceName, String objectName, boolean beanOnly )
  +        String publishedServiceName, String objectName)
           throws ConnectionException, ClassNotFoundException
       {
   
  -        String code = "2";
  -
  -        if( beanOnly )
  -        {
  -            code = "";
  -        }
  -
           TransportedClassLoader tcl = null;
  -        String beanClassName = "AltrmiGenerated" + publishedServiceName + 
"_" + objectName;
  -        String iiClassName = "AltrmiGenerated2" + publishedServiceName + "_" 
+ objectName;
  -        String className = "AltrmiGenerated" + code + publishedServiceName + 
"_" + objectName;
  +        String proxyClassName = "AltrmiGenerated" + publishedServiceName + 
"_" + objectName;
   
  -        if( m_publishedServiceClassLoaders.containsKey( beanClassName ) )
  +        if( m_publishedServiceClassLoaders.containsKey( proxyClassName ) )
           {
  -            tcl = 
(TransportedClassLoader)m_publishedServiceClassLoaders.get( beanClassName );
  +            tcl = 
(TransportedClassLoader)m_publishedServiceClassLoaders.get( proxyClassName );
           }
           else
           {
  @@ -101,44 +97,22 @@
               tcl = new TransportedClassLoader( 
m_hostContext.getClientInvocationHandler()
                                                 .getInterfacesClassLoader() );
   
  -            tcl.add( beanClassName, cr.getBeanClassBytes() );
  -
  -            try
  -            {
  -                byte[] bytes = cr.getInterfaceImplClassBytes();
  +            tcl.add( proxyClassName, cr.getProxyClassBytes() );
   
  -                tcl.add( iiClassName, bytes );
  -            }
  -            catch( NoClassDefFoundError ncdfe )
  -            {
  -
  -                // do nothing.  It's a fundamental error to have no 
interfaces
  -                // on theclient side.  This is a development issue or the 
user
  -                // is poking with a smart tool like beanshell which can use
  -                // introspection to invoke methods.
  -            }
  -
  -            m_publishedServiceClassLoaders.put( beanClassName, tcl );
  +            m_publishedServiceClassLoaders.put( proxyClassName, tcl );
           }
   
  -        return tcl.loadClass( className );
  +        return tcl.loadClass( proxyClassName );
       }
   
       protected Object getInstance(
  -        String publishedServiceName, String objectName, DefaultProxyHelper 
proxyHelper, boolean beanOnly )
  +        String publishedServiceName, String objectName, DefaultProxyHelper 
proxyHelper)
           throws ConnectionException
       {
   
  -        String code = "2";
  -
  -        if( beanOnly )
  -        {
  -            code = "";
  -        }
  -
           try
           {
  -            Class clazz = getFacadeClass( publishedServiceName, objectName, 
beanOnly );
  +            Class clazz = getFacadeClass( publishedServiceName, objectName);
               Constructor[] constructors = clazz.getConstructors();
               Object retVal = constructors[ 0 ].newInstance( new 
Object[]{proxyHelper} );
   
  
  
  
  1.2       +2 -26     
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/naming/DefaultContext.java
  
  Index: DefaultContext.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/naming/DefaultContext.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DefaultContext.java       9 Jan 2003 22:55:29 -0000       1.1
  +++ DefaultContext.java       1 Feb 2003 11:33:48 -0000       1.2
  @@ -50,7 +50,6 @@
       {
   
           String proxyDetails = null;
  -        String beanDetails = null;
           ClassLoader interfacesClassLoader = null;
           boolean optimize;
   
  @@ -77,28 +76,6 @@
               }
           }
   
  -        beanDetails = (String)env.get( "bean.type" );
  -
  -        {
  -            if( beanDetails == null )
  -            {
  -                beanDetails = "NBO";
  -            }
  -            else if( beanDetails.equals( "NotBeanOnly" ) )
  -            {
  -                beanDetails = "NBO";
  -            }
  -            else if( beanDetails.equals( "BeanOnly" ) )
  -            {
  -                beanDetails = "BO";
  -            }
  -            else
  -            {
  -                throw new NamingException(
  -                    "proxy.type should be 'BeanOnly' or 'NotBeanOnly', you 
specified " + beanDetails );
  -            }
  -        }
  -
           String optimizeStr = (String)env.get( "optimize" );
   
           {
  @@ -136,8 +113,7 @@
                   m_altrmiInterfaceLookup =
                       m_altrmiInterfaceLookupFactory
                       .getInterfaceLookup( transportStream + ":" + host + ":" 
+ port + ":"
  -                                               + proxyDetails + ":"
  -                                               + beanDetails, 
interfacesClassLoader, optimize );
  +                                               + proxyDetails, 
interfacesClassLoader, optimize );
               }
               catch( ConnectionException ace )
               {
  
  
  
  1.9       +2 -2      
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/rmi/RmiFactoryHelper.java
  
  Index: RmiFactoryHelper.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/rmi/RmiFactoryHelper.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- RmiFactoryHelper.java     9 Jan 2003 22:55:10 -0000       1.8
  +++ RmiFactoryHelper.java     1 Feb 2003 11:33:48 -0000       1.9
  @@ -45,7 +45,7 @@
           // TODO maybe we should cache these.  Or the abstract parent class 
should.
           String[] terms = processFactoryString( factoryString );
           HostContext hc = new RmiHostContext( terms[ 1 ], Integer.parseInt( 
terms[ 2 ] ) );
  -        Factory af = createFactory( terms[ 3 ], terms[ 4 ].equalsIgnoreCase( 
"bo" ) );
  +        Factory af = createFactory( terms[ 3 ]);
   
           af.setHostContext( hc );
   
  
  
  
  1.11      +2 -2      
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/socket/SocketCustomStreamFactoryHelper.java
  
  Index: SocketCustomStreamFactoryHelper.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/socket/SocketCustomStreamFactoryHelper.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- SocketCustomStreamFactoryHelper.java      9 Jan 2003 22:55:10 -0000       
1.10
  +++ SocketCustomStreamFactoryHelper.java      1 Feb 2003 11:33:48 -0000       
1.11
  @@ -46,7 +46,7 @@
           HostContext hc = new SocketCustomStreamHostContext( terms[ 1 ],
                                                                     
Integer.parseInt( terms[ 2 ] ),
                                                                     
interfacesClassLoader );
  -        Factory af = createFactory( terms[ 3 ], terms[ 4 ].equalsIgnoreCase( 
"bo" ) );
  +        Factory af = createFactory( terms[ 3 ]);
   
           af.setHostContext( hc, optimize );
           return af;
  
  
  
  1.10      +2 -2      
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/socket/SocketObjectStreamFactoryHelper.java
  
  Index: SocketObjectStreamFactoryHelper.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/client/impl/socket/SocketObjectStreamFactoryHelper.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- SocketObjectStreamFactoryHelper.java      9 Jan 2003 22:55:10 -0000       
1.9
  +++ SocketObjectStreamFactoryHelper.java      1 Feb 2003 11:33:48 -0000       
1.10
  @@ -46,7 +46,7 @@
           HostContext hc = new SocketObjectStreamHostContext( terms[ 1 ],
                                                                     
Integer.parseInt( terms[ 2 ] ),
                                                                     
interfacesClassLoader );
  -        Factory af = createFactory( terms[ 3 ], terms[ 4 ].equalsIgnoreCase( 
"bo" ) );
  +        Factory af = createFactory( terms[ 3 ] );
   
           af.setHostContext( hc, optimize );
           return af;
  
  
  
  1.7       +11 -27    
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/common/ClassReply.java
  
  Index: ClassReply.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/common/ClassReply.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- ClassReply.java   6 Jan 2003 23:41:51 -0000       1.6
  +++ ClassReply.java   1 Feb 2003 11:33:48 -0000       1.7
  @@ -20,22 +20,20 @@
    */
   public final class ClassReply extends Reply
   {
  -    static final long serialVersionUID = -3512420149032910635L;
   
  -    private byte[] m_beanClassBytes;
  -    private byte[] m_interfaceImplClassBytes;
  +    static final long serialVersionUID = -3849144476006325180L;
  +
  +    private byte[] m_proxyClassBytes;
   
       /**
        * Contruct a class reply from byte arrays of classes.
        *
  -     * @param beanClassBytes a byte array of the class def for the class 
containing the methods.
  -     * @param interfaceImplClassBytes a byte array for the class 
implementing the interfaces.
  +     * @param proxyClassBytes a byte array of the class def for the class 
containing the methods.
        *
        */
  -    public ClassReply( byte[] beanClassBytes, byte[] interfaceImplClassBytes 
)
  +    public ClassReply( byte[] proxyClassBytes )
       {
  -        this.m_beanClassBytes = beanClassBytes;
  -        this.m_interfaceImplClassBytes = interfaceImplClassBytes;
  +        this.m_proxyClassBytes = proxyClassBytes;
       }
   
       /**
  @@ -54,21 +52,9 @@
        * @return a byte array of the serialized bean class
        *
        */
  -    public byte[] getBeanClassBytes()
  -    {
  -        return m_beanClassBytes;
  -    }
  -
  -    /**
  -     * Get interface implementation byte array.
  -     *
  -     *
  -     * @return a byte array of the serialized impl class
  -     *
  -     */
  -    public byte[] getInterfaceImplClassBytes()
  +    public byte[] getProxyClassBytes()
       {
  -        return m_interfaceImplClassBytes;
  +        return m_proxyClassBytes;
       }
   
       /**
  @@ -101,8 +87,7 @@
        */
       public void writeExternal( ObjectOutput out ) throws IOException
       {
  -        out.writeObject( m_beanClassBytes );
  -        out.writeObject( m_interfaceImplClassBytes );
  +        out.writeObject( m_proxyClassBytes );
       }
   
       /**
  @@ -119,7 +104,6 @@
        */
       public void readExternal( ObjectInput in ) throws IOException, 
ClassNotFoundException
       {
  -        m_beanClassBytes = (byte[])in.readObject();
  -        m_interfaceImplClassBytes = (byte[])in.readObject();
  +        m_proxyClassBytes = (byte[])in.readObject();
       }
   }
  
  
  
  1.6       +10 -1     
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/common/ProxyGenerator.java
  
  Index: ProxyGenerator.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/common/ProxyGenerator.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- ProxyGenerator.java       4 Jan 2003 22:17:19 -0000       1.5
  +++ ProxyGenerator.java       1 Feb 2003 11:33:48 -0000       1.6
  @@ -108,4 +108,13 @@
        *
        */
       void verbose( boolean trueFalse );
  +
  +    /**
  +     * Set the callback facades
  +     *
  +     *
  +     * @param callbackFacades callback facades/interfaces to handle
  +     *
  +     */
  +    void setCallbackFacades(PublicationDescriptionItem[] callbackFacades);
   }
  
  
  
  1.7       +12 -1     
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/generator/AbstractProxyGenerator.java
  
  Index: AbstractProxyGenerator.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/generator/AbstractProxyGenerator.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- AbstractProxyGenerator.java       4 Jan 2003 22:17:19 -0000       1.6
  +++ AbstractProxyGenerator.java       1 Feb 2003 11:33:48 -0000       1.7
  @@ -30,6 +30,7 @@
       private String m_classpath;
       private boolean m_verbose;
       private PublicationDescriptionItem[] m_additionalFacades;
  +    private PublicationDescriptionItem[] m_callbackFacades;
       private PublicationDescriptionItem[] m_interfacesToExpose;
   
       /**
  @@ -96,6 +97,11 @@
           return m_additionalFacades;
       }
   
  +    public PublicationDescriptionItem[] getCallbackFacades()
  +    {
  +        return m_callbackFacades;
  +    }
  +
       /**
        * Get the interfaces to expose.
        *
  @@ -143,6 +149,11 @@
       public void setAdditionalFacades( PublicationDescriptionItem[] 
additionalFacades )
       {
           m_additionalFacades = additionalFacades;
  +    }
  +
  +    public void setCallbackFacades(PublicationDescriptionItem[] 
callbackFacades)
  +    {
  +        this.m_callbackFacades = callbackFacades;
       }
   
       /**
  
  
  
  1.13      +14 -116   
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/generator/BCELProxyGeneratorImpl.java
  
  Index: BCELProxyGeneratorImpl.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/generator/BCELProxyGeneratorImpl.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- BCELProxyGeneratorImpl.java       9 Jan 2003 22:55:11 -0000       1.12
  +++ BCELProxyGeneratorImpl.java       1 Feb 2003 11:33:49 -0000       1.13
  @@ -68,10 +68,6 @@
   
           //create the Main Stubs:
           generateProxyClass(STUB_PREFIX + getGenName() + "_Main", 
getInterfacesToExpose());
  -        generateProxyClass2(
  -            STUB_PREFIX + "2" + getGenName() + "_Main",
  -            STUB_PREFIX + getGenName() + "_Main",
  -            getInterfacesToExpose());
   
           //Create the Additional Facades
           if (getAdditionalFacades() != null)
  @@ -82,10 +78,6 @@
                   generateProxyClass(
                       STUB_PREFIX + getGenName() + "_" + encodedClassName,
                       new PublicationDescriptionItem[] { 
getAdditionalFacades()[i] });
  -                generateProxyClass2(
  -                    STUB_PREFIX + "2" + getGenName() + "_" + 
encodedClassName,
  -                    STUB_PREFIX + getGenName() + "_" + encodedClassName,
  -                    new PublicationDescriptionItem[] { 
getAdditionalFacades()[i] });
   
               }
           }
  @@ -104,7 +96,7 @@
           PublicationDescriptionItem[] interfacesToStubify)
       {
           //Start creating class
  -        createNewClassDeclaration(mGeneratedClassName);
  +        createNewClassDeclaration(mGeneratedClassName, interfacesToStubify);
           /******** CONSTRUCTOR **************/
           //create constructor that takes ProxyHelper
           createConstructor(mGeneratedClassName);
  @@ -137,45 +129,6 @@
           }
       }
   
  -    /**
  -     * Method generateProxyClass2.
  -     *      Create the Stub Class purely implementing the Interface  and
  -     *             inheriting the implementation from the helper class
  -     *     Generating AltrmiGenerated2GENNAME_Main class
  -     * @param generatedClassName2 the implementation class name
  -     * @param generatedClassName the bean class name
  -     * @param interfacesToStubify the interfaces to turn into stubs.
  -     */
  -    protected void generateProxyClass2(
  -        String generatedClassName2,
  -        String generatedClassName,
  -        PublicationDescriptionItem[] interfacesToStubify)
  -    {
  -        //start creating the class
  -        createNewClassDeclaration2(
  -            generatedClassName2,
  -            generatedClassName,
  -            interfacesToStubify);
  -        //create the constructor
  -        createConstructor2(generatedClassName2, generatedClassName);
  -        try
  -        {
  -            FileOutputStream fos =
  -                new FileOutputStream(getClassGenDir() + "/" + 
generatedClassName2 + ".class");
  -            m_classGen.getJavaClass().dump(fos);
  -            fos.close();
  -        }
  -        catch (FileNotFoundException fnfe)
  -        {
  -            fnfe.printStackTrace();
  -        }
  -        catch (IOException ioe)
  -        {
  -            ioe.printStackTrace();
  -        }
  -
  -    }
  -
       //<BCEL>  <!-- Enter the BCEL Arena -->
   
       /**
  @@ -183,50 +136,31 @@
        *     This method starts creating the class.
        * @param generatedClassName the bean class name
        */
  -    protected void createNewClassDeclaration(String generatedClassName)
  +    protected void createNewClassDeclaration(String generatedClassName, 
PublicationDescriptionItem[] interfacesToStubify)
       {
   
  +        String[] interfaces = new String[interfacesToStubify.length +1];
  +        for (int i = 0; i < interfacesToStubify.length; i++)
  +        {
  +            PublicationDescriptionItem publicationDescriptionItem = 
interfacesToStubify[i];
  +            interfaces[i] = 
publicationDescriptionItem.getFacadeClass().getName();
  +        }
  +        interfaces[interfacesToStubify.length] = 
"org.apache.excalibur.altrmi.client.Proxy";
  +
  +
           m_classGen =
               new ClassGen(
                   generatedClassName,
                   "java.lang.Object",
                   generatedClassName + ".java",
  -                Constants.ACC_PUBLIC | Constants.ACC_SUPER,
  -                new String[] { "org.apache.excalibur.altrmi.client.Proxy" });
  +                Constants.ACC_PUBLIC | Constants.ACC_SUPER | 
Constants.ACC_FINAL,
  +                interfaces);
           m_constantsPool = m_classGen.getConstantPool();
           m_factory = new InstructionFactory(m_classGen, m_constantsPool);
           m_internalFieldRepresentingClasses = new ArrayList();
   
       }
  -    /**
  -     * Method createNewClassDeclaration2.
  -     *     Create a class which extends a class contained the impl of the 
Interface and
  -     *                     and  implements the interface
  -     * @param generatedClassName2 the implementation class name
  -     * @param generatedClassName the bean class name
  -     * @param interfacesToStubify the interfaces to turn into stubs.
   
  -     */
  -    protected void createNewClassDeclaration2(
  -        String generatedClassName2,
  -        String generatedClassName,
  -        PublicationDescriptionItem[] interfacesToStubify)
  -    {
  -        String[] interafacesToImplement = new 
String[interfacesToStubify.length];
  -        for (int i = 0; i < interafacesToImplement.length; i++)
  -        {
  -            interafacesToImplement[i] = 
interfacesToStubify[i].getFacadeClass().getName();
  -        }
  -        m_classGen =
  -            new ClassGen(
  -                generatedClassName2,
  -                generatedClassName,
  -                generatedClassName2 + ".java",
  -                Constants.ACC_PUBLIC | Constants.ACC_FINAL | 
Constants.ACC_SUPER,
  -                interafacesToImplement);
  -        m_constantsPool = m_classGen.getConstantPool();
  -        m_factory = new InstructionFactory(m_classGen, m_constantsPool);
  -    }
       /**
        * Method createConstructor.
        *     This method adds a constructor that takes in a ProxyHelper 
Instance
  @@ -263,42 +197,6 @@
                   new 
ObjectType("org.apache.excalibur.altrmi.client.ProxyHelper"),
                   Constants.PUTFIELD));
           InstructionHandle ih9 = il.append(m_factory.createReturn(Type.VOID));
  -        method.setMaxStack();
  -        method.setMaxLocals();
  -        m_classGen.addMethod(method.getMethod());
  -        il.dispose();
  -    }
  -
  -    /**
  -     * Method createConstructor2.
  -     * @param generatedClassName2 the implementation class name
  -     * @param generatedClassName the bean class name
  -     */
  -    protected void createConstructor2(
  -        String generatedClassName2,
  -        String generatedClassName)
  -    {
  -        InstructionList il = new InstructionList();
  -        MethodGen method =
  -            new MethodGen(
  -                Constants.ACC_PUBLIC,
  -                Type.VOID,
  -                new Type[] { new 
ObjectType("org.apache.excalibur.altrmi.client.ProxyHelper")},
  -                new String[] { "arg0" },
  -                "<init>",
  -                generatedClassName2,
  -                il,
  -                m_constantsPool);
  -        InstructionHandle ih0 = il.append(m_factory.createLoad(Type.OBJECT, 
0));
  -        il.append(m_factory.createLoad(Type.OBJECT, 1));
  -        il.append(
  -            m_factory.createInvoke(
  -                generatedClassName,
  -                "<init>",
  -                Type.VOID,
  -                new Type[] { new 
ObjectType("org.apache.excalibur.altrmi.client.ProxyHelper")},
  -                Constants.INVOKESPECIAL));
  -        InstructionHandle ih5 = il.append(m_factory.createReturn(Type.VOID));
           method.setMaxStack();
           method.setMaxLocals();
           m_classGen.addMethod(method.getMethod());
  
  
  
  1.21      +7 -51     
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/generator/ProxyGeneratorImpl.java
  
  Index: ProxyGeneratorImpl.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/generator/ProxyGeneratorImpl.java,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- ProxyGeneratorImpl.java   20 Jan 2003 07:45:36 -0000      1.20
  +++ ProxyGeneratorImpl.java   1 Feb 2003 11:33:49 -0000       1.21
  @@ -48,7 +48,6 @@
   
           // The lookupable service class source.
           makeSource( classLoader, "Main", getInterfacesToExpose() );
  -        makeSource2( classLoader, "Main", getInterfacesToExpose() );
   
           if( getAdditionalFacades() != null )
           {
  @@ -57,9 +56,9 @@
                   PublicationDescriptionItem facade = getAdditionalFacades()[ 
i ];
   
                   makeSource( classLoader, MethodNameHelper.encodeClassName( 
facade.getFacadeClass() ), new PublicationDescriptionItem[]{facade} );
  -                makeSource2( classLoader, MethodNameHelper.encodeClassName( 
facade.getFacadeClass() ), new PublicationDescriptionItem[]{facade} );
               }
           }
  +
       }
   
       /**
  @@ -82,8 +81,6 @@
           jc.addDefaultClassPath();
           jc.doCompile( getSrcGenDir() + File.separator + "AltrmiGenerated"
                   + getGenName() + "_Main.java" );
  -        jc.doCompile( getSrcGenDir() + File.separator + "AltrmiGenerated2"
  -                + getGenName() + "_Main.java" );
           System.out.println( jc.getCompilerMessage() );
   
           if( getAdditionalFacades() != null )
  @@ -94,10 +91,9 @@
   
                   jc.doCompile( getSrcGenDir() + File.separator + 
"AltrmiGenerated"
                           + getGenName() + "_" + classname + ".java" );
  -                jc.doCompile( getSrcGenDir() + File.separator + 
"AltrmiGenerated2"
  -                        + getGenName() + "_" + classname + ".java" );
               }
           }
  +
       }
   
       /**
  @@ -149,8 +145,10 @@
                       + filename + "'" );
           }
   
  -        m_classSource.print( "public class AltrmiGenerated" + getGenName() + 
"_" + name );
  -        m_classSource.println( " implements 
org.apache.excalibur.altrmi.client.Proxy{ " );
  +        m_classSource.print( "public final class AltrmiGenerated" + 
getGenName() + "_" + name );
  +        m_classSource.println( " implements 
org.apache.excalibur.altrmi.client.Proxy, " );
  +        generateInterfaceList( m_classSource, interfacesToExpose );
  +        m_classSource.println( " { " );
           m_classSource.println(
               "  private transient 
org.apache.excalibur.altrmi.client.ProxyHelper m_proxyHelper;" );
   
  @@ -451,48 +449,6 @@
                   "      Object retVal = m_proxyHelper.processObjectRequest(\""
                   + methodSignature.toString() + "\",args,argClasses);" );
               generateReturnLine( rClass );
  -        }
  -    }
  -
  -    /**
  -     * Method makeSource2
  -     *
  -     *
  -     * @param classloader the classloader to use
  -     * @param name the name of the source file.
  -     * @param interfacesToExpose the interfaces to expose.
  -     *
  -     * @throws ProxyGenerationException if generation not possible.
  -     *
  -     */
  -    public void makeSource2( ClassLoader classloader, String name, 
PublicationDescriptionItem[] interfacesToExpose )
  -        throws ProxyGenerationException
  -    {
  -
  -        String filename = getSrcGenDir() + File.separator + 
"AltrmiGenerated2" + getGenName() + "_"
  -            + name + ".java";
  -
  -        try
  -        {
  -            PrintWriter class2Source = new PrintWriter( new 
FileOutputStream( filename ) );
  -
  -            class2Source.print( "public final class AltrmiGenerated2" + 
getGenName() + "_" + name );
  -            class2Source.print( " extends AltrmiGenerated" + getGenName() + 
"_" + name );
  -            class2Source.print( " implements " );
  -            generateInterfaceList( class2Source, interfacesToExpose );
  -            class2Source.println( " { " );
  -            class2Source.println(
  -                "  public AltrmiGenerated2" + getGenName() + "_" + name
  -                + " (org.apache.excalibur.altrmi.client.ProxyHelper 
proxyHelper) {" );
  -            class2Source.println( "      super(proxyHelper);" );
  -            class2Source.println( "  }" );
  -            class2Source.println( "}" );
  -            class2Source.close();
  -        }
  -        catch( FileNotFoundException e )
  -        {
  -            throw new ProxyGenerationException( "Cannot make source output 
file '" + filename
  -                                                + "'" );
           }
       }
   
  
  
  
  1.3       +41 -1     
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/generator/ant/ProxyGenerationTask.java
  
  Index: ProxyGenerationTask.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/generator/ant/ProxyGenerationTask.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- ProxyGenerationTask.java  20 Jan 2003 07:45:36 -0000      1.2
  +++ ProxyGenerationTask.java  1 Feb 2003 11:33:49 -0000       1.3
  @@ -31,6 +31,7 @@
   
       protected String[] m_interfacesToExpose;
       protected String[] m_additionalFacades;
  +    protected String[] m_callbackFacades;
       protected File m_srcGenDir;
       protected File m_classGenDir;
       protected String m_genName;
  @@ -94,6 +95,30 @@
       }
   
       /**
  +     * Method setAdditionalfacades
  +     *
  +     *
  +     * @param callbackfacades
  +     *
  +     */
  +    public void setCallbackfacades( String callbackfacades )
  +    {
  +
  +        StringTokenizer st = new StringTokenizer( callbackfacades, "," );
  +        Vector strings = new Vector();
  +
  +        while( st.hasMoreTokens() )
  +        {
  +            strings.add( st.nextToken().trim() );
  +        }
  +
  +        m_callbackFacades = new String[ strings.size() ];
  +
  +        strings.copyInto( m_callbackFacades );
  +    }
  +
  +
  +    /**
        * Method setSrcgendir
        *
        *
  @@ -278,6 +303,21 @@
   
                   proxyGenerator.setAdditionalFacades( additionalFacades );
               }
  +
  +            if( m_callbackFacades != null )
  +            {
  +                PublicationDescriptionItem[] callbackFacades = new 
PublicationDescriptionItem[ m_callbackFacades.length ];
  +
  +                for( int i = 0; i < m_callbackFacades.length; i++ )
  +                {
  +                    String cn = m_callbackFacades[ i ];
  +
  +                    callbackFacades[ i ] = new 
PublicationDescriptionItem(classLoader.loadClass( cn ));
  +                }
  +
  +                proxyGenerator.setCallbackFacades( callbackFacades );
  +            }
  +
   
               ClassLoader classLoader2 = null;
   
  
  
  
  1.5       +2 -14     
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/ClassRetriever.java
  
  Index: ClassRetriever.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/ClassRetriever.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- ClassRetriever.java       4 Jan 2003 22:17:19 -0000       1.4
  +++ ClassRetriever.java       1 Feb 2003 11:33:49 -0000       1.5
  @@ -30,18 +30,6 @@
        * @throws ClassRetrievalException if the classdef cannot be found.
        *
        */
  -    byte[] getBeanBytes( String publishedName ) throws 
ClassRetrievalException;
  +    byte[] getProxyClassBytes( String publishedName ) throws 
ClassRetrievalException;
   
  -    /**
  -     * Get an interface implementation's bytes (from its classdefinition)
  -     *
  -     *
  -     * @param publishedName the name the impl is published as.
  -     *
  -     * @return a byte array for the impl's class representation.
  -     *
  -     * @throws ClassRetrievalException if the classdef cannot be found.
  -     *
  -     */
  -    byte[] getInterfaceImplementationBytes( String publishedName ) throws 
ClassRetrievalException;
   }
  
  
  
  1.13      +5 -1      
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/DefaultMethodInvocationHandler.java
  
  Index: DefaultMethodInvocationHandler.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/DefaultMethodInvocationHandler.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- DefaultMethodInvocationHandler.java       5 Jan 2003 23:24:44 -0000       
1.12
  +++ DefaultMethodInvocationHandler.java       1 Feb 2003 11:33:49 -0000       
1.13
  @@ -263,6 +263,10 @@
                   DefaultMethodInvocationHandler methodInvocationHandler =
                       (DefaultMethodInvocationHandler)m_altrmiPublisher
                       .getMethodInvocationHandler( frh.getObjectName() );
  +                if (methodInvocationHandler == null)
  +                {
  +                    System.out.println("--> not found " + 
frh.getObjectName());
  +                }
                   WeakReference wr =
                       (WeakReference)methodInvocationHandler.m_refBeans.get( 
frh.getReferenceID() );
   
  
  
  
  1.20      +2 -4      
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/adapters/InvocationHandlerAdapter.java
  
  Index: InvocationHandlerAdapter.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/adapters/InvocationHandlerAdapter.java,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- InvocationHandlerAdapter.java     27 Jan 2003 21:55:50 -0000      1.19
  +++ InvocationHandlerAdapter.java     1 Feb 2003 11:33:49 -0000       1.20
  @@ -454,9 +454,7 @@
   
           try
           {
  -            return new ClassReply( m_classRetriever.getBeanBytes( 
publishedThing ),
  -                                   m_classRetriever
  -                                   .getInterfaceImplementationBytes( 
publishedThing ) );
  +            return new ClassReply( m_classRetriever.getProxyClassBytes( 
publishedThing ));
           }
           catch( ClassRetrievalException e )
           {
  
  
  
  1.2       +9 -5      
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/callback/CallbackServerClassFactory.java
  
  Index: CallbackServerClassFactory.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/callback/CallbackServerClassFactory.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- CallbackServerClassFactory.java   9 Jan 2003 22:55:29 -0000       1.1
  +++ CallbackServerClassFactory.java   1 Feb 2003 11:33:50 -0000       1.2
  @@ -38,12 +38,16 @@
        * Construct a CallbackServerClassFactory
        *
        *
  -     * @param beanOnly if to make a bean-only client side proxy
  +     * @param unused
  +     * @deprecated
        *
        */
  -    public CallbackServerClassFactory( boolean beanOnly )
  +    public CallbackServerClassFactory( boolean unused )
  +    {
  +    }
  +
  +    public CallbackServerClassFactory()
       {
  -        super( beanOnly );
       }
   
       //hack method to influence OpenConnectionRequest/reply sequence
  @@ -107,7 +111,7 @@
                   this, m_hostContext.getClientInvocationHandler(),
                   publishedServiceName, "Main",
                   lr.getReferenceID(), m_session );
  -        Object retVal = getInstance( modifiedPublishedName, "Main", baseObj, 
isBeanOnly() );
  +        Object retVal = getInstance( modifiedPublishedName, "Main", baseObj);
   
           baseObj.registerImplObject( retVal );
   
  
  
  
  1.11      +1 -2      
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/callback/socket/CallbackEnabledSocketCustomStreamReadWriter.java
  
  Index: CallbackEnabledSocketCustomStreamReadWriter.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/callback/socket/CallbackEnabledSocketCustomStreamReadWriter.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- CallbackEnabledSocketCustomStreamReadWriter.java  29 Jan 2003 08:01:13 
-0000      1.10
  +++ CallbackEnabledSocketCustomStreamReadWriter.java  1 Feb 2003 11:33:50 
-0000       1.11
  @@ -18,7 +18,6 @@
   import org.apache.excalibur.altrmi.common.MethodRequest;
   import org.apache.excalibur.altrmi.common.SerializationHelper;
   import org.apache.excalibur.altrmi.common.ThreadContext;
  -import org.apache.excalibur.altrmi.common.ThreadContextProvider;
   import org.apache.excalibur.altrmi.server.impl.ServerStreamReadWriter;
   import org.apache.excalibur.altrmi.server.impl.callback.CallbackHostContext;
   import 
org.apache.excalibur.altrmi.server.impl.callback.CallbackServerClassFactory;
  
  
  
  1.5       +3 -20     
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/classretrievers/AbstractClassRetriever.java
  
  Index: AbstractClassRetriever.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/classretrievers/AbstractClassRetriever.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- AbstractClassRetriever.java       15 Jul 2002 21:52:19 -0000      1.4
  +++ AbstractClassRetriever.java       1 Feb 2003 11:33:50 -0000       1.5
  @@ -36,7 +36,7 @@
       }
   
       /**
  -     * Method getBeanBytes
  +     * Method getProxyClassBytes
        *
        *
        * @param publishedName the publication name
  @@ -46,26 +46,9 @@
        * @throws ClassRetrievalException if the bytes cannot be retrieved.
        *
        */
  -    public final byte[] getBeanBytes( String publishedName ) throws 
ClassRetrievalException
  +    public final byte[] getProxyClassBytes( String publishedName ) throws 
ClassRetrievalException
       {
           return getThingBytes( "AltrmiGenerated" + publishedName );
  -    }
  -
  -    /**
  -     * Method getInterfaceImplementationBytes
  -     *
  -     *
  -     * @param publishedName the publication name
  -     *
  -     * @return a byte array for the Bean.
  -     *
  -     * @throws ClassRetrievalException if the bytes cannot be retrieved.
  -     *
  -     */
  -    public final byte[] getInterfaceImplementationBytes( String 
publishedName )
  -        throws ClassRetrievalException
  -    {
  -        return getThingBytes( "AltrmiGenerated2" + publishedName );
       }
   
       /**
  
  
  
  1.11      +4 -21     
jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/classretrievers/AbstractDynamicGeneratorClassRetriever.java
  
  Index: AbstractDynamicGeneratorClassRetriever.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/java/org/apache/excalibur/altrmi/server/impl/classretrievers/AbstractDynamicGeneratorClassRetriever.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- AbstractDynamicGeneratorClassRetriever.java       9 Jan 2003 22:55:12 
-0000       1.10
  +++ AbstractDynamicGeneratorClassRetriever.java       1 Feb 2003 11:33:50 
-0000       1.11
  @@ -145,36 +145,19 @@
       }
   
       /**
  -     * Method getBeanBytes
  +     * Method getProxyClassBytes
        *
        *
        * @param publishedName the name to publish as
        *
  -     * @return the byte array for the bean.
  +     * @return the byte array for the proxy class
        *
        * @throws ClassRetrievalException if the class cannot be retrieved.
        *
        */
  -    public final byte[] getBeanBytes( String publishedName ) throws 
ClassRetrievalException
  +    public final byte[] getProxyClassBytes( String publishedName ) throws 
ClassRetrievalException
       {
           return getThingBytes( "AltrmiGenerated" + publishedName );
  -    }
  -
  -    /**
  -     * Method getInterfaceImplementationBytes
  -     *
  -     *
  -     * @param publishedName the name to publish as
  -     *
  -     * @return the byte array for the bean.
  -     *
  -     * @throws ClassRetrievalException if the class cannot be retrieved.
  -     *
  -     */
  -    public final byte[] getInterfaceImplementationBytes( String 
publishedName )
  -        throws ClassRetrievalException
  -    {
  -        return getThingBytes( "AltrmiGenerated2" + publishedName );
       }
   
       /**
  
  
  
  1.2       +2 -2      
jakarta-avalon-excalibur/altrmi/src/test/org/apache/excalibur/altrmi/test/AbstractHelloCallBackTestCase.java
  
  Index: AbstractHelloCallBackTestCase.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/test/org/apache/excalibur/altrmi/test/AbstractHelloCallBackTestCase.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AbstractHelloCallBackTestCase.java        26 Aug 2002 21:53:48 -0000      
1.1
  +++ AbstractHelloCallBackTestCase.java        1 Feb 2003 11:33:50 -0000       
1.2
  @@ -11,8 +11,8 @@
           implements TestCallBackListener
   {
   
  -    private String cbMessage;
  -    private TestInterface cbServer;
  +    protected String cbMessage;
  +    protected TestInterface cbServer;
   
       public AbstractHelloCallBackTestCase(String name)
       {
  
  
  
  1.5       +12 -1     
jakarta-avalon-excalibur/altrmi/src/test/org/apache/excalibur/altrmi/test/proxies/CodedProxyTestInterfaceProxy.java
  
  Index: CodedProxyTestInterfaceProxy.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/test/org/apache/excalibur/altrmi/test/proxies/CodedProxyTestInterfaceProxy.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- CodedProxyTestInterfaceProxy.java 26 Aug 2002 21:53:49 -0000      1.4
  +++ CodedProxyTestInterfaceProxy.java 1 Feb 2003 11:33:50 -0000       1.5
  @@ -198,4 +198,15 @@
       {
           m_actualImpl.ping();
       }
  +
  +    public String toString()
  +    {
  +        return m_actualImpl.toString();
  +    }
  +
  +    public int hashCode()
  +    {
  +        return m_actualImpl.hashCode();
  +    }
  +
   }
  
  
  
  1.10      +4 -3      
jakarta-avalon-excalibur/altrmi/src/test/org/apache/excalibur/altrmi/test/socket/CallbackEnabledCustomStreamTestCase.java
  
  Index: CallbackEnabledCustomStreamTestCase.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/altrmi/src/test/org/apache/excalibur/altrmi/test/socket/CallbackEnabledCustomStreamTestCase.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- CallbackEnabledCustomStreamTestCase.java  28 Jan 2003 21:25:46 -0000      
1.9
  +++ CallbackEnabledCustomStreamTestCase.java  1 Feb 2003 11:33:50 -0000       
1.10
  @@ -62,9 +62,10 @@
           // the curious thing about callbacks for the moment is that the 
generated class's lookup name
           // MUST match the short name of the implementation being used.  We 
will fix this later (TODO) -PH
   
  -        final HashMap results = new HashMap();
  -
  -        testClient.addCallBackListener(new MyTestCallBackListener(results));
  +        testClient.addCallBackListener(this);
  +        testServer.ping();
  +        assertNotNull(cbMessage);
  +        assertNotNull(cbServer);
   
       }
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to