You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by ha...@apache.org on 2002/01/18 12:03:22 UTC

cvs commit: jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common AbstractMethodHandler.java AltrmiAuthentication.java AltrmiAuthenticationException.java AltrmiConnectionException.java AltrmiInvocationException.java AltrmiInvocationHandler.java AltrmiReply.java AltrmiRequest.java ClassReply.java ClassRequest.java EndConnectionReply.java ExceptionReply.java FacadeRefHolder.java KeyAuthentication.java LookupReply.java LookupRequest.java MethodFacadeReply.java MethodFacadeRequest.java MethodReply.java MethodRequest.java NoSuchReferenceReply.java NotPublishedException.java NotPublishedReply.java NotSuchReferenceException.java OpenConnectionReply.java OpenConnectionRequest.java PublishedNameRequest.java RequestFailedReply.java RmiAltrmiInvocationHandler.java SuspendedReply.java TryLaterReply.java UserPasswordAuthentication.java

hammant     02/01/18 03:03:21

  Modified:    altrmi   PROPOSAL
               altrmi/src/java/org/apache/commons/altrmi/common
                        AbstractMethodHandler.java
                        AltrmiAuthentication.java
                        AltrmiAuthenticationException.java
                        AltrmiConnectionException.java
                        AltrmiInvocationException.java
                        AltrmiInvocationHandler.java AltrmiReply.java
                        AltrmiRequest.java ClassReply.java
                        ClassRequest.java EndConnectionReply.java
                        ExceptionReply.java FacadeRefHolder.java
                        KeyAuthentication.java LookupReply.java
                        LookupRequest.java MethodFacadeReply.java
                        MethodFacadeRequest.java MethodReply.java
                        MethodRequest.java NoSuchReferenceReply.java
                        NotPublishedException.java NotPublishedReply.java
                        NotSuchReferenceException.java
                        OpenConnectionReply.java OpenConnectionRequest.java
                        PublishedNameRequest.java RequestFailedReply.java
                        RmiAltrmiInvocationHandler.java SuspendedReply.java
                        TryLaterReply.java UserPasswordAuthentication.java
  Log:
  Speed improvements of 20% now Externalization used
  
  Revision  Changes    Path
  1.6       +2 -2      jakarta-commons-sandbox/altrmi/PROPOSAL
  
  Index: PROPOSAL
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/PROPOSAL,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- PROPOSAL	18 Jan 2002 09:58:13 -0000	1.5
  +++ PROPOSAL	18 Jan 2002 11:03:20 -0000	1.6
  @@ -41,8 +41,8 @@
       *AltRMI types*
       
       a) ObjectStream over sockets #2    1472     1.00
  -    c) Over RMI                        3338     2.30
  -    b) CustomStream over sockets       4717     3.20    
  +    b) Over RMI                        3338     2.30
  +    c) CustomStream over sockets       4717     3.20    
       d) ObjectStream over Pipe #2       8243     5.59
       e) ObjectStream over sockets #1    8865     6.02
       f) ObjectStream over Pipe #1      64789    44.01
  
  
  
  1.2       +10 -7     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AbstractMethodHandler.java
  
  Index: AbstractMethodHandler.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AbstractMethodHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AbstractMethodHandler.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ AbstractMethodHandler.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -19,7 +20,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public class AbstractMethodHandler {
   
  @@ -45,15 +46,17 @@
       }
   
       protected String encodeClassName(String className) {
  +
           StringBuffer sb = new StringBuffer();
  +
           for (int i = 0; i < className.length(); i++) {
  -          char ch = className.charAt(i);
  -          if (Character.isLetter(ch) | Character.isDigit(ch)) {
  -              sb.append(ch);
  -          }
  +            char ch = className.charAt(i);
  +
  +            if (Character.isLetter(ch) | Character.isDigit(ch)) {
  +                sb.append(ch);
  +            }
           }
  +
           return sb.toString();
       }
  -
  -
   }
  
  
  
  1.2       +12 -3     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiAuthentication.java
  
  Index: AltrmiAuthentication.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiAuthentication.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AltrmiAuthentication.java	14 Jan 2002 23:03:30 -0000	1.1
  +++ AltrmiAuthentication.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -7,8 +8,16 @@
    */
   package org.apache.commons.altrmi.common;
   
  -import java.io.Serializable;
   
  -public abstract class AltrmiAuthentication implements Serializable {
   
  -}
  +import java.io.Externalizable;
  +
  +
  +/**
  + * Class AltrmiAuthentication
  + *
  + *
  + * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  + * @version $Revision: 1.2 $
  + */
  +public abstract class AltrmiAuthentication implements Externalizable {}
  
  
  
  1.2       +17 -1     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiAuthenticationException.java
  
  Index: AltrmiAuthenticationException.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiAuthenticationException.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AltrmiAuthenticationException.java	14 Jan 2002 23:03:30 -0000	1.1
  +++ AltrmiAuthenticationException.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -7,10 +8,25 @@
    */
   package org.apache.commons.altrmi.common;
   
  +
  +
  +/**
  + * Class AltrmiAuthenticationException
  + *
  + *
  + * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  + * @version $Revision: 1.2 $
  + */
   public class AltrmiAuthenticationException extends AltrmiConnectionException {
   
  +    /**
  +     * Constructor AltrmiAuthenticationException
  +     *
  +     *
  +     * @param msg
  +     *
  +     */
       public AltrmiAuthenticationException(String msg) {
           super(msg);
       }
  -
   }
  
  
  
  1.2       +1 -0      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiConnectionException.java
  
  Index: AltrmiConnectionException.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiConnectionException.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AltrmiConnectionException.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ AltrmiConnectionException.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -14,7 +15,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public class AltrmiConnectionException extends Exception {
   
  
  
  
  1.2       +1 -0      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiInvocationException.java
  
  Index: AltrmiInvocationException.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiInvocationException.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AltrmiInvocationException.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ AltrmiInvocationException.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -17,7 +18,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public class AltrmiInvocationException extends RuntimeException implements Serializable {
   
  
  
  
  1.2       +1 -0      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiInvocationHandler.java
  
  Index: AltrmiInvocationHandler.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiInvocationHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AltrmiInvocationHandler.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ AltrmiInvocationHandler.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -17,7 +18,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version * $Revision: 1.1 $
  + * @version * $Revision: 1.2 $
    */
   public interface AltrmiInvocationHandler {
   
  
  
  
  1.3       +36 -13    jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiReply.java
  
  Index: AltrmiReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiReply.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AltrmiReply.java	15 Jan 2002 01:15:24 -0000	1.2
  +++ AltrmiReply.java	18 Jan 2002 11:03:20 -0000	1.3
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -9,7 +10,10 @@
   
   
   
  -import java.io.Serializable;
  +import java.io.Externalizable;
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
   
   
   /**
  @@ -17,12 +21,11 @@
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
  -public abstract class AltrmiReply implements Serializable {
  +public abstract class AltrmiReply implements Externalizable {
   
       // 'good' replies after 100
  -
       public static final int CLASSREPLY = 1;
       public static final int METHODREPLY = 2;
       public static final int EXCEPTIONREPLY = 3;
  @@ -31,7 +34,6 @@
       public static final int OPENCONNECTIONREPLY = 6;
   
       // 'bad' replies after 100
  -
       public static final int PROBLEMREPLY = 100;
       public static final int NOTPUBLISHEDREPLY = 102;
       public static final int REQUESTFAILEDREPLY = 103;
  @@ -39,22 +41,43 @@
       public static final int ENDCONNECTIONREPLY = 105;
       public static final int NOSUCHREFERENCEREPLY = 106;
   
  -
  -
       /**
  -     * Constructor AltrmiReply
  +     * Method getReplyCode.  This is quicker than instanceof for type checking.
        *
        *
  +     * @return
  +     *
        */
  -    AltrmiReply() {}
  +    public abstract int getReplyCode();
   
       /**
  -     * Method getReplyCode.  This is quicker than instanceof for type checking.
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
        *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
        *
  -     * @return
  -     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
        */
  -    public abstract int getReplyCode();
  +    public void writeExternal(ObjectOutput out) throws IOException {}
   
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {}
   }
  
  
  
  1.3       +36 -9     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiRequest.java
  
  Index: AltrmiRequest.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/AltrmiRequest.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AltrmiRequest.java	15 Jan 2002 01:15:24 -0000	1.2
  +++ AltrmiRequest.java	18 Jan 2002 11:03:20 -0000	1.3
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -9,7 +10,10 @@
   
   
   
  -import java.io.Serializable;
  +import java.io.Externalizable;
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
   
   
   /**
  @@ -17,9 +21,9 @@
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
  -public abstract class AltrmiRequest implements Serializable {
  +public abstract class AltrmiRequest implements Externalizable {
   
       public static final int CLASSREQUEST = 301;
       public static final int METHODREQUEST = 302;
  @@ -28,19 +32,42 @@
       public static final int OPENCONNECTIONREQUEST = 305;
   
       /**
  -     * Constructor AltrmiRequest
  +     * Method getRequestCode.  This is quicker than instanceof for type checking.
  +     *
        *
  +     * @return
        *
        */
  -    AltrmiRequest() {}
  +    public abstract int getRequestCode();
   
       /**
  -     * Method getRequestCode.  This is quicker than instanceof for type checking.
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
        *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
        *
  -     * @return
  -     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
        */
  -    public abstract int getRequestCode();
  +    public void writeExternal(ObjectOutput out) throws IOException {}
   
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {}
   }
  
  
  
  1.3       +56 -4     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/ClassReply.java
  
  Index: ClassReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/ClassReply.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- ClassReply.java	13 Jan 2002 00:13:53 -0000	1.2
  +++ ClassReply.java	18 Jan 2002 11:03:20 -0000	1.3
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -9,23 +10,30 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class ClassReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public final class ClassReply extends AltrmiReply {
   
  -    private final byte[] mBeanClassBytes;
  -    private final byte[] mInterfaceImplClassBytes;
  +    private byte[] mBeanClassBytes;
  +    private byte[] mInterfaceImplClassBytes;
   
       /**
        * Constructor ClassReply
        *
        *
  -     * @param classBytes
  +     *
  +     * @param beanClassBytes
  +     * @param interfaceImplClassBytes
        *
        */
       public ClassReply(byte[] beanClassBytes, byte[] interfaceImplClassBytes) {
  @@ -34,6 +42,13 @@
       }
   
       /**
  +     * Constructor ClassReply
  +     *
  +     *
  +     */
  +    public ClassReply() {}    // for Externalization
  +
  +    /**
        * Method getBeanClassBytes
        *
        *
  @@ -64,5 +79,42 @@
        */
       public int getReplyCode() {
           return CLASSREPLY;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.write(mBeanClassBytes);
  +        out.write(mInterfaceImplClassBytes);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        in.read(mBeanClassBytes);
  +        in.read(mInterfaceImplClassBytes);
       }
   }
  
  
  
  1.2       +10 -2     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/ClassRequest.java
  
  Index: ClassRequest.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/ClassRequest.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ClassRequest.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ ClassRequest.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -8,12 +9,13 @@
   package org.apache.commons.altrmi.common;
   
   
  +
   /**
    * Class ClassRequest
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class ClassRequest extends PublishedNameRequest {
   
  @@ -30,6 +32,13 @@
       }
   
       /**
  +     * Constructor ClassRequest
  +     *
  +     *
  +     */
  +    public ClassRequest() {}    // for Externalization
  +
  +    /**
        * Method getRequestCode.  This is quicker than instanceof for type checking.
        *
        *
  @@ -39,5 +48,4 @@
       public int getRequestCode() {
           return CLASSREQUEST;
       }
  -
   }
  
  
  
  1.2       +5 -4      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/EndConnectionReply.java
  
  Index: EndConnectionReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/EndConnectionReply.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- EndConnectionReply.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ EndConnectionReply.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -7,22 +8,22 @@
    */
   package org.apache.commons.altrmi.common;
   
  +
  +
   /**
    * Class EndConnectionReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class EndConnectionReply extends AltrmiReply {
   
  -
       /**
        * Constructor EndConnectionReply
        *
        */
  -    public EndConnectionReply() {
  -    }
  +    public EndConnectionReply() {}
   
       /**
        * Method getReplyCode.  This is quicker than instanceof for type checking.
  
  
  
  1.2       +50 -2     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/ExceptionReply.java
  
  Index: ExceptionReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/ExceptionReply.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ExceptionReply.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ ExceptionReply.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -9,16 +10,21 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class ExceptionReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class ExceptionReply extends AltrmiReply {
   
  -    private final Throwable mReplyExcpt;
  +    private Throwable mReplyExcpt;
   
       /**
        * Constructor ExceptionReply
  @@ -32,6 +38,13 @@
       }
   
       /**
  +     * Constructor ExceptionReply
  +     *
  +     *
  +     */
  +    public ExceptionReply() {}    // for Externalization
  +
  +    /**
        * Method getReplyException
        *
        *
  @@ -51,5 +64,40 @@
        */
       public int getReplyCode() {
           return EXCEPTIONREPLY;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.writeObject(mReplyExcpt);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        mReplyExcpt = (Throwable) in.readObject();
       }
   }
  
  
  
  1.3       +4 -2      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/FacadeRefHolder.java
  
  Index: FacadeRefHolder.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/FacadeRefHolder.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- FacadeRefHolder.java	14 Jan 2002 23:03:30 -0000	1.2
  +++ FacadeRefHolder.java	18 Jan 2002 11:03:20 -0000	1.3
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -7,6 +8,8 @@
    */
   package org.apache.commons.altrmi.common;
   
  +
  +
   import java.io.Serializable;
   
   
  @@ -15,13 +18,12 @@
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public final class FacadeRefHolder implements Serializable {
   
       private Long mReferenceID;
       private String mObjectName;
  -
   
       /**
        * Constructor FacadeRefHolder
  
  
  
  1.2       +51 -2     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/KeyAuthentication.java
  
  Index: KeyAuthentication.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/KeyAuthentication.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- KeyAuthentication.java	15 Jan 2002 01:15:24 -0000	1.1
  +++ KeyAuthentication.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -10,17 +10,22 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class KeyAuthentication
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class KeyAuthentication extends AltrmiAuthentication {
   
  -    private final String mPublicKey;
  -    private final String mSignedText;
  +    private String mPublicKey;
  +    private String mSignedText;
   
       /**
        * Constructor KeyAuthentication
  @@ -36,6 +41,13 @@
       }
   
       /**
  +     * Constructor KeyAuthentication
  +     *
  +     *
  +     */
  +    public KeyAuthentication() {}    // for Externalization
  +
  +    /**
        * Method getPublicKey
        *
        *
  @@ -55,5 +67,42 @@
        */
       public String getSignedText() {
           return mSignedText;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.writeObject(mPublicKey);
  +        out.writeObject(mSignedText);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        mPublicKey = (String) in.readObject();
  +        mSignedText = (String) in.readObject();
       }
   }
  
  
  
  1.3       +52 -3     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/LookupReply.java
  
  Index: LookupReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/LookupReply.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- LookupReply.java	14 Jan 2002 23:03:30 -0000	1.2
  +++ LookupReply.java	18 Jan 2002 11:03:20 -0000	1.3
  @@ -10,17 +10,22 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class LookupReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public final class LookupReply extends AltrmiReply {
   
  -    private final Long mReferenceID;
  -    private final Long mSession;
  +    private Long mReferenceID;
  +    private Long mSession;
   
       /**
        * Constructor LookupReply
  @@ -36,6 +41,13 @@
       }
   
       /**
  +     * Constructor LookupReply
  +     *
  +     *
  +     */
  +    public LookupReply() {}    // for Externalization
  +
  +    /**
        * Method getReferenceID.
        *
        *
  @@ -66,5 +78,42 @@
        */
       public Long getSession() {
           return mSession;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.writeObject(mReferenceID);
  +        out.writeObject(mSession);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        mReferenceID = (Long) in.readObject();
  +        mSession = (Long) in.readObject();
       }
   }
  
  
  
  1.3       +57 -2     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/LookupRequest.java
  
  Index: LookupRequest.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/LookupRequest.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- LookupRequest.java	14 Jan 2002 23:03:30 -0000	1.2
  +++ LookupRequest.java	18 Jan 2002 11:03:20 -0000	1.3
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -9,30 +10,45 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class LookupRequest
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public final class LookupRequest extends PublishedNameRequest {
   
  -    private final AltrmiAuthentication mAltrmiAuthentication;
  +    private AltrmiAuthentication mAltrmiAuthentication;
   
       /**
        * Constructor LookupRequest
        *
        *
        * @param publishedServiceName
  +     * @param altrmiAuthentication
        *
        */
       public LookupRequest(String publishedServiceName, AltrmiAuthentication altrmiAuthentication) {
  +
           super(publishedServiceName, "Main");
  +
           mAltrmiAuthentication = altrmiAuthentication;
       }
   
       /**
  +     * Constructor LookupRequest
  +     *
  +     *
  +     */
  +    public LookupRequest() {}    // for Externalization
  +
  +    /**
        * Method getRequestCode.  This is quicker than instanceof for type checking.
        *
        *
  @@ -52,5 +68,44 @@
        */
       public AltrmiAuthentication getAltrmiAuthentication() {
           return mAltrmiAuthentication;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        super.writeExternal(out);
  +        out.writeObject(mAltrmiAuthentication);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +
  +        super.readExternal(in);
  +
  +        mAltrmiAuthentication = (AltrmiAuthentication) in.readObject();
       }
   }
  
  
  
  1.3       +50 -2     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/MethodFacadeReply.java
  
  Index: MethodFacadeReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/MethodFacadeReply.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- MethodFacadeReply.java	14 Jan 2002 23:03:30 -0000	1.2
  +++ MethodFacadeReply.java	18 Jan 2002 11:03:20 -0000	1.3
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -9,16 +10,21 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class MethodFacadeReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public final class MethodFacadeReply extends AltrmiReply {
   
  -    private final Long mReferenceID;
  +    private Long mReferenceID;
   
       /**
        * Constructor MethodFacadeReply
  @@ -32,6 +38,13 @@
       }
   
       /**
  +     * Constructor MethodFacadeReply
  +     *
  +     *
  +     */
  +    public MethodFacadeReply() {}    // for Externalization
  +
  +    /**
        * Method getReference
        *
        *
  @@ -51,5 +64,40 @@
        */
       public int getReplyCode() {
           return METHODFACADEREPLY;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.writeObject(mReferenceID);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        mReferenceID = (Long) in.readObject();
       }
   }
  
  
  
  1.3       +59 -2     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/MethodFacadeRequest.java
  
  Index: MethodFacadeRequest.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/MethodFacadeRequest.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- MethodFacadeRequest.java	14 Jan 2002 23:03:30 -0000	1.2
  +++ MethodFacadeRequest.java	18 Jan 2002 11:03:20 -0000	1.3
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -9,12 +10,17 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class MethodFacadeRequest
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public final class MethodFacadeRequest extends MethodRequest {
   
  @@ -30,14 +36,26 @@
        * @param args
        * @param referenceID
        * @param returnClassNameEncoded
  +     * @param session
        *
        */
  -    public MethodFacadeRequest(String publishedServiceName, String objectName, String methodSignature, Object[] args, Long referenceID, String returnClassNameEncoded, Long session) {
  +    public MethodFacadeRequest(String publishedServiceName, String objectName,
  +                               String methodSignature, Object[] args, Long referenceID,
  +                               String returnClassNameEncoded, Long session) {
  +
           super(publishedServiceName, objectName, methodSignature, args, referenceID, session);
  +
           mReturnClassNameEncoded = returnClassNameEncoded;
       }
   
       /**
  +     * Constructor MethodFacadeRequest
  +     *
  +     *
  +     */
  +    public MethodFacadeRequest() {}    // for Externalization
  +
  +    /**
        * Method getRequestCode.  This is quicker than instanceof for type checking.
        *
        *
  @@ -57,5 +75,44 @@
        */
       public String getReturnClassNameEncoded() {
           return mReturnClassNameEncoded;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        super.writeExternal(out);
  +        out.writeObject(mReturnClassNameEncoded);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +
  +        super.readExternal(in);
  +
  +        mReturnClassNameEncoded = (String) in.readObject();
       }
   }
  
  
  
  1.2       +50 -2     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/MethodReply.java
  
  Index: MethodReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/MethodReply.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- MethodReply.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ MethodReply.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -9,16 +10,21 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class MethodReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class MethodReply extends AltrmiReply {
   
  -    private final Object mReplyObj;
  +    private Object mReplyObj;
   
       /**
        * Constructor MethodReply
  @@ -32,6 +38,13 @@
       }
   
       /**
  +     * Constructor MethodReply
  +     *
  +     *
  +     */
  +    public MethodReply() {}    // for Externalization
  +
  +    /**
        * Method getReplyObject
        *
        *
  @@ -51,5 +64,40 @@
        */
       public int getReplyCode() {
           return METHODREPLY;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.writeObject(mReplyObj);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        mReplyObj = in.readObject();
       }
   }
  
  
  
  1.3       +63 -5     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/MethodRequest.java
  
  Index: MethodRequest.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/MethodRequest.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- MethodRequest.java	14 Jan 2002 23:03:30 -0000	1.2
  +++ MethodRequest.java	18 Jan 2002 11:03:20 -0000	1.3
  @@ -10,19 +10,24 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class MethodRequest
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class MethodRequest extends PublishedNameRequest {
   
  -    private final String mMethodSignature;
  -    private final Object[] mArgs;
  -    private final Long mReferenceID;
  -    private final Long mSession;
  +    private String mMethodSignature;
  +    private Object[] mArgs;
  +    private Long mReferenceID;
  +    private Long mSession;
   
       /**
        * Constructor MethodRequest
  @@ -48,6 +53,13 @@
       }
   
       /**
  +     * Constructor MethodRequest
  +     *
  +     *
  +     */
  +    public MethodRequest() {}    // for Externalization
  +
  +    /**
        * Method getMethodSignature
        *
        *
  @@ -100,5 +112,51 @@
        */
       public Long getSession() {
           return mSession;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +
  +        super.writeExternal(out);
  +        out.writeObject(mMethodSignature);
  +        out.writeObject(mArgs);
  +        out.writeObject(mReferenceID);
  +        out.writeObject(mSession);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +
  +        super.readExternal(in);
  +
  +        mMethodSignature = (String) in.readObject();
  +        mArgs = (Object[]) in.readObject();
  +        mReferenceID = (Long) in.readObject();
  +        mSession = (Long) in.readObject();
       }
   }
  
  
  
  1.2       +5 -5      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/NoSuchReferenceReply.java
  
  Index: NoSuchReferenceReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/NoSuchReferenceReply.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- NoSuchReferenceReply.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ NoSuchReferenceReply.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -7,22 +8,22 @@
    */
   package org.apache.commons.altrmi.common;
   
  +
  +
   /**
    * Class NoSuchReferenceReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class NoSuchReferenceReply extends NotPublishedReply {
   
  -
       /**
        * Constructor NoSuchReferenceReply
        *
        */
  -    public NoSuchReferenceReply() {
  -    }
  +    public NoSuchReferenceReply() {}
   
       /**
        * Method getReplyCode.  This is quicker than instanceof for type checking.
  @@ -34,5 +35,4 @@
       public int getReplyCode() {
           return NOSUCHREFERENCEREPLY;
       }
  -
   }
  
  
  
  1.2       +4 -3      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/NotPublishedException.java
  
  Index: NotPublishedException.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/NotPublishedException.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- NotPublishedException.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ NotPublishedException.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -17,11 +18,10 @@
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public class NotPublishedException extends AltrmiInvocationException {
   
  -
       /**
        * Constructor NotPublishedException
        *
  @@ -31,6 +31,7 @@
        *
        */
       public NotPublishedException(String publishedServiceName, String objectName) {
  -        super("Service '" + publishedServiceName + "' object '" + objectName +"' not published by server");
  +        super("Service '" + publishedServiceName + "' object '" + objectName
  +              + "' not published by server");
       }
   }
  
  
  
  1.2       +5 -5      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/NotPublishedReply.java
  
  Index: NotPublishedReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/NotPublishedReply.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- NotPublishedReply.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ NotPublishedReply.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -7,22 +8,22 @@
    */
   package org.apache.commons.altrmi.common;
   
  +
  +
   /**
    * Class NotPublishedReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public class NotPublishedReply extends AltrmiReply {
   
  -
       /**
        * Constructor NotPublishedReply
        *
        */
  -    public NotPublishedReply() {
  -    }
  +    public NotPublishedReply() {}
   
       /**
        * Method getReplyCode.  This is quicker than instanceof for type checking.
  @@ -34,5 +35,4 @@
       public int getReplyCode() {
           return NOTPUBLISHEDREPLY;
       }
  -
   }
  
  
  
  1.2       +1 -3      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/NotSuchReferenceException.java
  
  Index: NotSuchReferenceException.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/NotSuchReferenceException.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- NotSuchReferenceException.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ NotSuchReferenceException.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -17,17 +18,14 @@
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public class NotSuchReferenceException extends AltrmiInvocationException {
   
  -
       /**
        * Constructor NotSuchReferenceException
        *
        *
  -     * @param publishedServiceName
  -     * @param objectName
        *
        */
       public NotSuchReferenceException() {
  
  
  
  1.2       +51 -3     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/OpenConnectionReply.java
  
  Index: OpenConnectionReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/OpenConnectionReply.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- OpenConnectionReply.java	15 Jan 2002 01:15:24 -0000	1.1
  +++ OpenConnectionReply.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -10,22 +10,28 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class OpenConnectionReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class OpenConnectionReply extends AltrmiReply {
   
  -    private final String mTextToSign;
  +    private String mTextToSign;
   
       /**
        * Constructor OpenConnectionReply
        *
        *
  -     * @param stringToSign
  +     *
  +     * @param textToSign
        *
        */
       public OpenConnectionReply(String textToSign) {
  @@ -33,6 +39,13 @@
       }
   
       /**
  +     * Constructor OpenConnectionReply
  +     *
  +     *
  +     */
  +    public OpenConnectionReply() {}    // for Externalization
  +
  +    /**
       * Method getReplyCode.  This is quicker than instanceof for type checking.
       *
       *
  @@ -52,5 +65,40 @@
        */
       public String getTextToSign() {
           return mTextToSign;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.writeObject(mTextToSign);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        mTextToSign = (String) in.readObject();
       }
   }
  
  
  
  1.2       +2 -1      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/OpenConnectionRequest.java
  
  Index: OpenConnectionRequest.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/OpenConnectionRequest.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- OpenConnectionRequest.java	15 Jan 2002 01:15:24 -0000	1.1
  +++ OpenConnectionRequest.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -8,12 +9,13 @@
   package org.apache.commons.altrmi.common;
   
   
  +
   /**
    * Class OpenConnectionRequest
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class OpenConnectionRequest extends AltrmiRequest {
   
  @@ -27,5 +29,4 @@
       public int getRequestCode() {
           return OPENCONNECTIONREQUEST;
       }
  -
   }
  
  
  
  1.2       +57 -4     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/PublishedNameRequest.java
  
  Index: PublishedNameRequest.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/PublishedNameRequest.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- PublishedNameRequest.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ PublishedNameRequest.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -8,23 +9,31 @@
   package org.apache.commons.altrmi.common;
   
   
  +
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class PublishedNameRequest
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public abstract class PublishedNameRequest extends AltrmiRequest {
   
  -    private final String mPublishedServiceName;
  -    private final String mObjectName;
  +    private String mPublishedServiceName;
  +    private String mObjectName;
   
       /**
        * Constructor PublishedNameRequest
        *
        *
  -     * @param publishedObjectName
  +     *
  +     * @param publishedServiceName
  +     * @param objectName
        *
        */
       public PublishedNameRequest(String publishedServiceName, String objectName) {
  @@ -33,6 +42,13 @@
       }
   
       /**
  +     * Constructor PublishedNameRequest
  +     *
  +     *
  +     */
  +    public PublishedNameRequest() {}    // for Externalization
  +
  +    /**
        * Method getPublishedServiceName
        *
        *
  @@ -52,5 +68,42 @@
        */
       public String getObjectName() {
           return mObjectName;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.writeObject(mPublishedServiceName);
  +        out.writeObject(mObjectName);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        mPublishedServiceName = (String) in.readObject();
  +        mObjectName = (String) in.readObject();
       }
   }
  
  
  
  1.2       +50 -2     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/RequestFailedReply.java
  
  Index: RequestFailedReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/RequestFailedReply.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- RequestFailedReply.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ RequestFailedReply.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -9,16 +10,21 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class RequestFailedReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class RequestFailedReply extends AltrmiReply {
   
  -    private final String mFailureReason;
  +    private String mFailureReason;
   
       /**
        * Constructor RequestFailedReply
  @@ -32,6 +38,13 @@
       }
   
       /**
  +     * Constructor RequestFailedReply
  +     *
  +     *
  +     */
  +    public RequestFailedReply() {}    // for Externalization
  +
  +    /**
        * Method getFailureReason
        *
        *
  @@ -51,5 +64,40 @@
        */
       public int getReplyCode() {
           return REQUESTFAILEDREPLY;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.writeObject(mFailureReason);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        mFailureReason = (String) in.readObject();
       }
   }
  
  
  
  1.2       +1 -0      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/RmiAltrmiInvocationHandler.java
  
  Index: RmiAltrmiInvocationHandler.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/RmiAltrmiInvocationHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- RmiAltrmiInvocationHandler.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ RmiAltrmiInvocationHandler.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -18,7 +19,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version * $Revision: 1.1 $
  + * @version * $Revision: 1.2 $
    */
   public interface RmiAltrmiInvocationHandler extends Remote {
   
  
  
  
  1.2       +3 -2      jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/SuspendedReply.java
  
  Index: SuspendedReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/SuspendedReply.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SuspendedReply.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ SuspendedReply.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -8,12 +9,13 @@
   package org.apache.commons.altrmi.common;
   
   
  +
   /**
    * Class SuspendedReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class SuspendedReply extends TryLaterReply {
   
  @@ -27,5 +29,4 @@
       public int getReplyCode() {
           return SUSPENDEDREPLY;
       }
  -
   }
  
  
  
  1.2       +46 -5     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/TryLaterReply.java
  
  Index: TryLaterReply.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/TryLaterReply.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- TryLaterReply.java	9 Jan 2002 19:25:54 -0000	1.1
  +++ TryLaterReply.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -1,3 +1,4 @@
  +
   /*
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -9,31 +10,36 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class TryLaterReply
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public abstract class TryLaterReply extends AltrmiReply {
   
  -    private final int mSuggestedDelayMillis;
  +    private int mSuggestedDelayMillis;
   
       /**
        * Constructor TryLaterReply
        *
        */
       public TryLaterReply() {
  -        mSuggestedDelayMillis = 5 * 1000; // ten seconds.
  +        mSuggestedDelayMillis = 5 * 1000;    // ten seconds.
       }
   
  -
       /**
        * Constructor TryLaterReply
        *
        *
  -     * @param delayMillis
  +     *
  +     * @param suggestedDelayMillis
        *
        */
       public TryLaterReply(int suggestedDelayMillis) {
  @@ -49,5 +55,40 @@
        */
       public int getSuggestedDelayMillis() {
           return mSuggestedDelayMillis;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.writeInt(mSuggestedDelayMillis);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        mSuggestedDelayMillis = in.readInt();
       }
   }
  
  
  
  1.2       +52 -3     jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/UserPasswordAuthentication.java
  
  Index: UserPasswordAuthentication.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/altrmi/src/java/org/apache/commons/altrmi/common/UserPasswordAuthentication.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- UserPasswordAuthentication.java	14 Jan 2002 23:03:30 -0000	1.1
  +++ UserPasswordAuthentication.java	18 Jan 2002 11:03:20 -0000	1.2
  @@ -10,17 +10,22 @@
   
   
   
  +import java.io.ObjectOutput;
  +import java.io.IOException;
  +import java.io.ObjectInput;
  +
  +
   /**
    * Class UserPasswordAuthentication
    *
    *
    * @author Paul Hammant <a href="mailto:Paul_Hammant@yahoo.com">Paul_Hammant@yahoo.com</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public final class UserPasswordAuthentication extends AltrmiAuthentication {
   
  -    private final String mUserID;
  -    private final String mPassword;
  +    private String mUserID;
  +    private String mPassword;
   
       /**
        * Constructor UserPasswordAuthentication
  @@ -36,6 +41,13 @@
       }
   
       /**
  +     * Constructor UserPasswordAuthentication
  +     *
  +     *
  +     */
  +    public UserPasswordAuthentication() {}    // for Externalization
  +
  +    /**
        * Method getUserID
        *
        *
  @@ -55,5 +67,42 @@
        */
       public String getPassword() {
           return mPassword;
  +    }
  +
  +    /**
  +     * The object implements the writeExternal method to save its contents
  +     * by calling the methods of DataOutput for its primitive values or
  +     * calling the writeObject method of ObjectOutput for objects, strings,
  +     * and arrays.
  +     *
  +     * @serialData Overriding methods should use this tag to describe
  +     *             the data layout of this Externalizable object.
  +     *             List the sequence of element types and, if possible,
  +     *             relate the element to a public/protected field and/or
  +     *             method of this Externalizable class.
  +     *
  +     * @param out the stream to write the object to
  +     * @exception IOException Includes any I/O exceptions that may occur
  +     */
  +    public void writeExternal(ObjectOutput out) throws IOException {
  +        out.writeObject(mUserID);
  +        out.writeObject(mPassword);
  +    }
  +
  +    /**
  +     * The object implements the readExternal method to restore its
  +     * contents by calling the methods of DataInput for primitive
  +     * types and readObject for objects, strings and arrays.  The
  +     * readExternal method must read the values in the same sequence
  +     * and with the same types as were written by writeExternal.
  +     *
  +     * @param in the stream to read data from in order to restore the object
  +     * @exception IOException if I/O errors occur
  +     * @exception ClassNotFoundException If the class for an object being
  +     *              restored cannot be found.
  +     */
  +    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  +        mUserID = (String) in.readObject();
  +        mPassword = (String) in.readObject();
       }
   }
  
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>