Class MicroHessianInput


  • public class MicroHessianInput
    extends Object
    Input stream for Hessian requests, compatible with microedition Java. It only uses classes and types available to J2ME. In particular, it does not have any support for the <double> type.

    MicroHessianInput does not depend on any classes other than in J2ME, so it can be extracted independently into a smaller package.

    MicroHessianInput is unbuffered, so any client needs to provide its own buffering.

     InputStream is = ...; // from http connection
     MicroHessianInput in = new MicroHessianInput(is);
     String value;
    
     in.startReply();         // read reply header
     value = in.readString(); // read string value
     in.completeReply();      // read reply footer
     
    • Constructor Detail

      • MicroHessianInput

        public MicroHessianInput​(InputStream is)
        Creates a new Hessian input stream, initialized with an underlying input stream.
        Parameters:
        is - the underlying input stream.
      • MicroHessianInput

        public MicroHessianInput()
        Creates an uninitialized Hessian input stream.
    • Method Detail

      • init

        public void init​(InputStream is)
        Initialize the hessian stream with the underlying input stream.
      • startReply

        public void startReply()
                        throws IOException
        Starts reading the reply

        A successful completion will have a single value:

         r x01 x00
         
        Throws:
        IOException
      • completeReply

        public void completeReply()
                           throws IOException
        Completes reading the call

        A successful completion will have a single value:

         z
         
        Throws:
        IOException
      • readLong

        public long readLong()
                      throws IOException
        Reads a long
         L b64 b56 b48 b40 b32 b24 b16 b8
         
        Throws:
        IOException
      • readUTCDate

        public long readUTCDate()
                         throws IOException
        Reads a date.
         T b64 b56 b48 b40 b32 b24 b16 b8
         
        Throws:
        IOException
      • readBytes

        public byte[] readBytes()
                         throws IOException
        Reads a byte array
         B b16 b8 data value
         
        Throws:
        IOException
      • readStringImpl

        protected String readStringImpl​(int length)
                                 throws IOException
        Reads a string from the underlying stream.
        Throws:
        IOException