org.openorb.orb.io
Class ListInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by org.omg.CORBA.portable.InputStream
          extended by org.omg.CORBA_2_3.portable.InputStream
              extended by org.openorb.orb.io.ListInputStream
All Implemented Interfaces:
java.io.Closeable, ExtendedInputStream

public class ListInputStream
extends org.omg.CORBA_2_3.portable.InputStream
implements ExtendedInputStream

This implementation of org.omg.CORBA_2_3.portable.InputStream uses a list as it's backing store. All non primitive types are stored by reference.

Version:
$Revision: 1.9 $ $Date: 2004/02/10 21:02:49 $
Author:
Chris Wood

Constructor Summary
ListInputStream(org.omg.CORBA.ORB orb, java.util.List source)
          Create new list input stream.
 
Method Summary
 int available()
          This operation is not available as the stream does not deal with bytes.
 boolean equals(java.lang.Object obj)
          Compare this ListInputStream to another ListInputStream or ListOutputStream.
 java.lang.String get_codebase()
          Get codebase associated with stream.
 int getSourceSize()
          Set the index into the source.
 void mark(int ign)
          Mark the position for later resetting.
 boolean markAvailable()
          Returns true.
 org.omg.CORBA.ORB orb()
          Get the orb associated with the stream.
 java.lang.Object read_abstract_interface()
           
 java.lang.Object read_abstract_interface(java.lang.Class clz)
           
 org.omg.CORBA.Any read_any()
           
 void read_boolean_array(boolean[] dest, int off, int len)
          Read a boolean array.
 boolean read_boolean()
          Read a boolean value.
 void read_char_array(char[] dest, int off, int len)
           
 char read_char()
           
 org.omg.CORBA.Context read_Context()
           
 void read_double_array(double[] dest, int off, int len)
           
 double read_double()
           
 java.math.BigDecimal read_fixed()
           
 java.math.BigDecimal read_fixed(short digits, short scale)
          read a fixed.
 java.math.BigDecimal read_fixed(org.omg.CORBA.TypeCode type)
          read a fixed.
 void read_float_array(float[] dest, int off, int len)
           
 float read_float()
           
 void read_long_array(int[] dest, int off, int len)
           
 int read_long()
           
 void read_longlong_array(long[] dest, int off, int len)
           
 long read_longlong()
           
 org.omg.CORBA.Object read_Object()
           
 org.omg.CORBA.Object read_Object(java.lang.Class clz)
           
 void read_octet_array(byte[] dest, int off, int len)
           
 byte read_octet()
           
 org.omg.CORBA.Principal read_Principal()
          Deprecated. Deprecated by CORBA 2.2
 void read_short_array(short[] dest, int off, int len)
           
 short read_short()
           
 java.lang.String read_string()
           
 org.omg.CORBA.TypeCode read_TypeCode()
           
 void read_ulong_array(int[] dest, int off, int len)
           
 int read_ulong()
           
 void read_ulonglong_array(long[] dest, int off, int len)
           
 long read_ulonglong()
           
 void read_ushort_array(short[] dest, int off, int len)
           
 short read_ushort()
           
 java.io.Serializable read_value()
           
 java.io.Serializable read_value(org.omg.CORBA.portable.BoxedValueHelper factory)
           
 java.io.Serializable read_value(java.lang.Class clz)
           
 java.io.Serializable read_value(java.io.Serializable value)
          This function has a nonstandard implementation, it copies the data from the contained valuetype into the given target.
 java.io.Serializable read_value(java.lang.String rep_id)
           
 void read_wchar_array(char[] dest, int off, int len)
           
 char read_wchar()
           
 java.lang.String read_wstring()
           
 void reset()
          Reset the position to one previously marked.
 int skip()
          This operation is not available as the stream does not deal with bytes.
 
Methods inherited from class org.omg.CORBA.portable.InputStream
read
 
Methods inherited from class java.io.InputStream
close, markSupported, read, read, skip
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ListInputStream

public ListInputStream(org.omg.CORBA.ORB orb,
                       java.util.List source)
Create new list input stream. This is normally called only by the ListOutputStream, since the contents of the list are specialized.

Parameters:
orb - the owning orb.
source - data source.
Method Detail

orb

public org.omg.CORBA.ORB orb()
Get the orb associated with the stream.

Specified by:
orb in interface ExtendedInputStream
Overrides:
orb in class org.omg.CORBA.portable.InputStream

get_codebase

public java.lang.String get_codebase()
Get codebase associated with stream. This will return the contents of any TAG_JAVA_CODEBASE service context when unmarshaling, or otherwise return null. Always returns null for list stream.

Specified by:
get_codebase in interface ExtendedInputStream

getSourceSize

public int getSourceSize()
Set the index into the source. This is used to reset the position to one visited previously. private void setIndex( int index ) { if ( index > m_source.size() || index < 0 ) { throw new IndexOutOfBoundsException(); } m_iter_pos = index; m_iter = null; }


skip

public int skip()
This operation is not available as the stream does not deal with bytes.


available

public int available()
This operation is not available as the stream does not deal with bytes.

Overrides:
available in class java.io.InputStream

markAvailable

public boolean markAvailable()
Returns true.


mark

public void mark(int ign)
Mark the position for later resetting.

Overrides:
mark in class java.io.InputStream
Parameters:
ign - ignored, stream does not deal with bytes.

reset

public void reset()
Reset the position to one previously marked.

Overrides:
reset in class java.io.InputStream

read_boolean

public boolean read_boolean()
Read a boolean value.

Specified by:
read_boolean in class org.omg.CORBA.portable.InputStream

read_boolean_array

public void read_boolean_array(boolean[] dest,
                               int off,
                               int len)
Read a boolean array.

Specified by:
read_boolean_array in class org.omg.CORBA.portable.InputStream

read_octet

public byte read_octet()
Specified by:
read_octet in class org.omg.CORBA.portable.InputStream

read_octet_array

public void read_octet_array(byte[] dest,
                             int off,
                             int len)
Specified by:
read_octet_array in class org.omg.CORBA.portable.InputStream

read_short

public short read_short()
Specified by:
read_short in class org.omg.CORBA.portable.InputStream

read_short_array

public void read_short_array(short[] dest,
                             int off,
                             int len)
Specified by:
read_short_array in class org.omg.CORBA.portable.InputStream

read_ushort

public short read_ushort()
Specified by:
read_ushort in class org.omg.CORBA.portable.InputStream

read_ushort_array

public void read_ushort_array(short[] dest,
                              int off,
                              int len)
Specified by:
read_ushort_array in class org.omg.CORBA.portable.InputStream

read_long

public int read_long()
Specified by:
read_long in class org.omg.CORBA.portable.InputStream

read_long_array

public void read_long_array(int[] dest,
                            int off,
                            int len)
Specified by:
read_long_array in class org.omg.CORBA.portable.InputStream

read_ulong

public int read_ulong()
Specified by:
read_ulong in class org.omg.CORBA.portable.InputStream

read_ulong_array

public void read_ulong_array(int[] dest,
                             int off,
                             int len)
Specified by:
read_ulong_array in class org.omg.CORBA.portable.InputStream

read_longlong

public long read_longlong()
Specified by:
read_longlong in class org.omg.CORBA.portable.InputStream

read_longlong_array

public void read_longlong_array(long[] dest,
                                int off,
                                int len)
Specified by:
read_longlong_array in class org.omg.CORBA.portable.InputStream

read_ulonglong

public long read_ulonglong()
Specified by:
read_ulonglong in class org.omg.CORBA.portable.InputStream

read_ulonglong_array

public void read_ulonglong_array(long[] dest,
                                 int off,
                                 int len)
Specified by:
read_ulonglong_array in class org.omg.CORBA.portable.InputStream

read_char

public char read_char()
Specified by:
read_char in class org.omg.CORBA.portable.InputStream

read_char_array

public void read_char_array(char[] dest,
                            int off,
                            int len)
Specified by:
read_char_array in class org.omg.CORBA.portable.InputStream

read_wchar

public char read_wchar()
Specified by:
read_wchar in class org.omg.CORBA.portable.InputStream

read_wchar_array

public void read_wchar_array(char[] dest,
                             int off,
                             int len)
Specified by:
read_wchar_array in class org.omg.CORBA.portable.InputStream

read_float

public float read_float()
Specified by:
read_float in class org.omg.CORBA.portable.InputStream

read_float_array

public void read_float_array(float[] dest,
                             int off,
                             int len)
Specified by:
read_float_array in class org.omg.CORBA.portable.InputStream

read_double

public double read_double()
Specified by:
read_double in class org.omg.CORBA.portable.InputStream

read_double_array

public void read_double_array(double[] dest,
                              int off,
                              int len)
Specified by:
read_double_array in class org.omg.CORBA.portable.InputStream

read_string

public java.lang.String read_string()
Specified by:
read_string in class org.omg.CORBA.portable.InputStream

read_wstring

public java.lang.String read_wstring()
Specified by:
read_wstring in class org.omg.CORBA.portable.InputStream

read_Object

public org.omg.CORBA.Object read_Object()
Specified by:
read_Object in class org.omg.CORBA.portable.InputStream

read_Object

public org.omg.CORBA.Object read_Object(java.lang.Class clz)
Overrides:
read_Object in class org.omg.CORBA.portable.InputStream

read_TypeCode

public org.omg.CORBA.TypeCode read_TypeCode()
Specified by:
read_TypeCode in class org.omg.CORBA.portable.InputStream

read_any

public org.omg.CORBA.Any read_any()
Specified by:
read_any in class org.omg.CORBA.portable.InputStream

read_Context

public org.omg.CORBA.Context read_Context()
Overrides:
read_Context in class org.omg.CORBA.portable.InputStream

read_Principal

public org.omg.CORBA.Principal read_Principal()
Deprecated. Deprecated by CORBA 2.2

Overrides:
read_Principal in class org.omg.CORBA.portable.InputStream

read_fixed

public java.math.BigDecimal read_fixed()
Overrides:
read_fixed in class org.omg.CORBA.portable.InputStream

read_fixed

public java.math.BigDecimal read_fixed(org.omg.CORBA.TypeCode type)
read a fixed.

Specified by:
read_fixed in interface ExtendedInputStream

read_fixed

public java.math.BigDecimal read_fixed(short digits,
                                       short scale)
read a fixed.

Specified by:
read_fixed in interface ExtendedInputStream
Overrides:
read_fixed in class org.omg.CORBA.portable.InputStream

read_value

public java.io.Serializable read_value()
Overrides:
read_value in class org.omg.CORBA_2_3.portable.InputStream

read_value

public java.io.Serializable read_value(java.lang.String rep_id)
Overrides:
read_value in class org.omg.CORBA_2_3.portable.InputStream

read_value

public java.io.Serializable read_value(java.lang.Class clz)
Overrides:
read_value in class org.omg.CORBA_2_3.portable.InputStream

read_value

public java.io.Serializable read_value(org.omg.CORBA.portable.BoxedValueHelper factory)
Overrides:
read_value in class org.omg.CORBA_2_3.portable.InputStream

read_value

public java.io.Serializable read_value(java.io.Serializable value)
This function has a nonstandard implementation, it copies the data from the contained valuetype into the given target. The CDR streams also have a similar function.

Overrides:
read_value in class org.omg.CORBA_2_3.portable.InputStream

read_abstract_interface

public java.lang.Object read_abstract_interface()
Overrides:
read_abstract_interface in class org.omg.CORBA_2_3.portable.InputStream

read_abstract_interface

public java.lang.Object read_abstract_interface(java.lang.Class clz)
Overrides:
read_abstract_interface in class org.omg.CORBA_2_3.portable.InputStream

equals

public boolean equals(java.lang.Object obj)
Compare this ListInputStream to another ListInputStream or ListOutputStream.

Overrides:
equals in class java.lang.Object