com.parctechnologies.eclipse
Class EXDRInputStream

java.lang.Object
  extended byjava.io.InputStream
      extended byjava.io.FilterInputStream
          extended byjava.io.DataInputStream
              extended bycom.parctechnologies.eclipse.EXDRInputStream
All Implemented Interfaces:
java.io.DataInput

public class EXDRInputStream
extends java.io.DataInputStream

A stream which can read EXDR format. An EXDRInputStream can be constructed from any instance of the InputStream class and extends it to be able to interpret incoming data which is in the EXDR (ECLiPSe eXternal Data Representation) format.

Use the method readTerm() to convert from EXDR into Java CompoundTerm objects and instances of other relevant Java classes which represent ECLiPSe types.

Note that EXDRInputStream objects are often constructed using the FromEclipseQueue class.

See Also:
CompoundTerm, FromEclipseQueue

Constructor Summary
EXDRInputStream(java.io.InputStream in)
          Construct an EXDRInputStream using a given InputStream for incoming data.
 
Method Summary
 java.lang.Object readTerm()
          Read a chunk (one term's worth) of EXDR from the incoming data and convert it into the corresponding object (an instance of CompoundTerm, Integer, etc.).
 
Methods inherited from class java.io.DataInputStream
read, read, readBoolean, readByte, readChar, readDouble, readFloat, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedShort, readUTF, readUTF, skipBytes
 
Methods inherited from class java.io.FilterInputStream
available, close, mark, markSupported, read, reset, skip
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EXDRInputStream

public EXDRInputStream(java.io.InputStream in)
Construct an EXDRInputStream using a given InputStream for incoming data.

Method Detail

readTerm

public java.lang.Object readTerm()
                          throws java.io.IOException
Read a chunk (one term's worth) of EXDR from the incoming data and convert it into the corresponding object (an instance of CompoundTerm, Integer, etc.). This works as an atomic action so no other thread can read until the complete term has been read in.

Throws:
java.io.IOException