Class IDLJavaSerializationInputStream

java.lang.Object
java.io.InputStream
com.sun.corba.se.impl.encoding.IDLJavaSerializationInputStream
All Implemented Interfaces:
Closeable, AutoCloseable

public class IDLJavaSerializationInputStream extends InputStream
Implementation class that uses Java serialization for input streams. This assumes a GIOP version 1.2 message format. This class uses a ByteArrayInputStream as the underlying buffer. The first 16 bytes are directly read out of the underlying buffer. This allows [GIOPHeader (12 bytes) + requestID (4 bytes)] to be read as bytes. Subsequent write operations on this output stream object uses ObjectInputStream class to read into the buffer. This allows unmarshaling complex types and graphs using the ObjectInputStream implementation. Note, this class assumes a GIOP 1.2 style header. Further, the first 12 bytes, that is, the GIOPHeader is read directly from the received message, before this stream object is called. So, this class effectively reads only the requestID (4 bytes) directly, and uses the ObjectInputStream for further unmarshaling.
Author:
Ram Jeyaraman
  • Field Details

  • Constructor Details

    • IDLJavaSerializationInputStream

      public IDLJavaSerializationInputStream(byte encodingVersion)
  • Method Details

    • init

      public void init(ORB orb, ByteBuffer byteBuffer, int bufSize, boolean littleEndian, BufferManagerRead bufferManager)
    • read_boolean

      public boolean read_boolean()
    • read_char

      public char read_char()
    • read_wchar

      public char read_wchar()
    • read_octet

      public byte read_octet()
    • read_short

      public short read_short()
    • read_ushort

      public short read_ushort()
    • read_long

      public int read_long()
    • read_ulong

      public int read_ulong()
    • read_longlong

      public long read_longlong()
    • read_ulonglong

      public long read_ulonglong()
    • read_float

      public float read_float()
    • read_double

      public double read_double()
    • read_string

      public String read_string()
    • read_wstring

      public String read_wstring()
    • read_boolean_array

      public void read_boolean_array(boolean[] value, int offset, int length)
    • read_char_array

      public void read_char_array(char[] value, int offset, int length)
    • read_wchar_array

      public void read_wchar_array(char[] value, int offset, int length)
    • read_octet_array

      public void read_octet_array(byte[] value, int offset, int length)
    • read_short_array

      public void read_short_array(short[] value, int offset, int length)
    • read_ushort_array

      public void read_ushort_array(short[] value, int offset, int length)
    • read_long_array

      public void read_long_array(int[] value, int offset, int length)
    • read_ulong_array

      public void read_ulong_array(int[] value, int offset, int length)
    • read_longlong_array

      public void read_longlong_array(long[] value, int offset, int length)
    • read_ulonglong_array

      public void read_ulonglong_array(long[] value, int offset, int length)
    • read_float_array

      public void read_float_array(float[] value, int offset, int length)
    • read_double_array

      public void read_double_array(double[] value, int offset, int length)
    • read_Object

      public Object read_Object()
    • read_TypeCode

      public TypeCode read_TypeCode()
    • read_any

      public Any read_any()
    • read_Principal

      public Principal read_Principal()
    • read_fixed

      public BigDecimal read_fixed()
    • read_Object

      public Object read_Object(Class clz)
    • orb

      public ORB orb()
    • read_value

      public Serializable read_value()
    • read_value

      public Serializable read_value(Class clz)
    • read_value

      public Serializable read_value(BoxedValueHelper factory)
    • read_value

      public Serializable read_value(String rep_id)
    • read_value

      public Serializable read_value(Serializable value)
    • read_abstract_interface

      public Object read_abstract_interface()
    • read_abstract_interface

      public Object read_abstract_interface(Class clz)
    • consumeEndian

      public void consumeEndian()
    • getPosition

      public int getPosition()
    • read_Abstract

      public Object read_Abstract()
    • read_Value

      public Serializable read_Value()
    • read_any_array

      public void read_any_array(AnySeqHolder seq, int offset, int length)
    • read_boolean_array

      public void read_boolean_array(BooleanSeqHolder seq, int offset, int length)
    • read_char_array

      public void read_char_array(CharSeqHolder seq, int offset, int length)
    • read_wchar_array

      public void read_wchar_array(WCharSeqHolder seq, int offset, int length)
    • read_octet_array

      public void read_octet_array(OctetSeqHolder seq, int offset, int length)
    • read_short_array

      public void read_short_array(ShortSeqHolder seq, int offset, int length)
    • read_ushort_array

      public void read_ushort_array(UShortSeqHolder seq, int offset, int length)
    • read_long_array

      public void read_long_array(LongSeqHolder seq, int offset, int length)
    • read_ulong_array

      public void read_ulong_array(ULongSeqHolder seq, int offset, int length)
    • read_ulonglong_array

      public void read_ulonglong_array(ULongLongSeqHolder seq, int offset, int length)
    • read_longlong_array

      public void read_longlong_array(LongLongSeqHolder seq, int offset, int length)
    • read_float_array

      public void read_float_array(FloatSeqHolder seq, int offset, int length)
    • read_double_array

      public void read_double_array(DoubleSeqHolder seq, int offset, int length)
    • _truncatable_ids

      public String[] _truncatable_ids()
    • mark

      public void mark(int readLimit)
    • reset

      public void reset()
    • markSupported

      public boolean markSupported()
    • dup

      public com.sun.corba.se.impl.encoding.CDRInputStreamBase dup()
    • read_fixed

      public BigDecimal read_fixed(short digits, short scale)
    • isLittleEndian

      public boolean isLittleEndian()
    • getByteBuffer

      public ByteBuffer getByteBuffer()
    • setByteBuffer

      public void setByteBuffer(ByteBuffer byteBuffer)
    • setByteBufferWithInfo

      public void setByteBufferWithInfo(ByteBufferWithInfo bbwi)
    • getBufferLength

      public int getBufferLength()
    • setBufferLength

      public void setBufferLength(int value)
    • getIndex

      public int getIndex()
    • setIndex

      public void setIndex(int value)
    • orb

      public void orb(ORB orb)
    • getBufferManager

      public BufferManagerRead getBufferManager()
    • getGIOPVersion

      public GIOPVersion getGIOPVersion()
    • resetCodeSetConverters

      public void resetCodeSetConverters()
    • start_value

      public void start_value()
    • end_value

      public void end_value()
    • setParent

      public void setParent(CDRInputStream parent)
    • read

      public int read() throws IOException
      Specified by:
      read in class InputStream
      Throws:
      IOException
    • read_Context

      public Context read_Context()