org.firebirdsql.gds.impl.wire
Class XdrInputStream

java.lang.Object
  extended by org.firebirdsql.gds.impl.wire.XdrInputStream
Direct Known Subclasses:
WireXdrInputStream

public class XdrInputStream
extends Object

XdrInputStream is an input stream for reading in data that is in the XDR format. An XdrInputStream instance is wrapped around an underlying java.io.InputStream.

Version:
1.0
Author:
Alejandro Alberola, David Jencks

Field Summary
protected  byte[] buf
           
protected  int count
           
protected static int defaultBufferSize
           
protected  InputStream in
           
protected static byte[] pad
           
protected  int pos
           
 
Constructor Summary
protected XdrInputStream()
           
  XdrInputStream(InputStream in)
          Create a new instance of XdrInputStream.
 
Method Summary
 void close()
          Close this input stream and the underlying input stream.
 int read()
          Read in the next byte of data from the underlying input stream.
 byte[] readBuffer()
          Read in a byte buffer.
 void readFully(byte[] b, int off, int len)
          Read a given amount of data from the underlying input stream.
 int readInt()
          Read in an int.
 long readLong()
          Read in a long.
 byte[] readRawBuffer(int len)
          Read in a raw array of bytes.
 int readShort()
          Read in a short.
 void readSQLData(int[] ioLength, isc_stmt_handle_impl stmt)
          Read a row of SQL data and store it in the results set of a statement.
 String readString()
          Read in a String.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

pad

protected static final byte[] pad

in

protected InputStream in

defaultBufferSize

protected static int defaultBufferSize

buf

protected byte[] buf

count

protected int count

pos

protected int pos
Constructor Detail

XdrInputStream

protected XdrInputStream()

XdrInputStream

public XdrInputStream(InputStream in)
Create a new instance of XdrInputStream.

Parameters:
in - The underlying InputStream to read from
Method Detail

readBuffer

public byte[] readBuffer()
                  throws IOException
Read in a byte buffer.

Returns:
The buffer that was read
Throws:
IOException - if an error occurs while reading from the underlying input stream

readRawBuffer

public byte[] readRawBuffer(int len)
                     throws IOException
Read in a raw array of bytes.

Parameters:
len - The number of bytes to read
Returns:
The byte buffer that was read
Throws:
IOException - if an error occurs while reading from the underlying input stream

readString

public String readString()
                  throws IOException
Read in a String.

Returns:
The String that was read
Throws:
IOException - if an error occurs while reading from the underlying input stream

readSQLData

public void readSQLData(int[] ioLength,
                        isc_stmt_handle_impl stmt)
                 throws IOException
Read a row of SQL data and store it in the results set of a statement.

Parameters:
ioLength - array containing the lengths of each column in the data row that is to be read
stmt - The statement where the row is to be stored
Throws:
IOException - if an error occurs while reading from the underlying input stream

readLong

public long readLong()
              throws IOException
Read in a long.

Returns:
The long that was read
Throws:
IOException - if an error occurs while reading from the underlying input stream

readInt

public int readInt()
            throws IOException
Read in an int.

Returns:
The int that was read
Throws:
IOException - if an error occurs while reading from the underlying input stream

readShort

public int readShort()
              throws IOException
Read in a short.

Returns:
The short that was read
Throws:
IOException - if an error occurs while reading from the underlying input stream

readFully

public void readFully(byte[] b,
                      int off,
                      int len)
               throws IOException
Read a given amount of data from the underlying input stream. The data that is read is stored in b, starting from offset off.

Parameters:
b - The byte buffer to hold the data that is read
off - The offset at which to start storing data in b
len - The number of bytes to be read
Throws:
IOException - if an error occurs while reading from the underlying input stream

read

public int read()
         throws IOException
Read in the next byte of data from the underlying input stream.

Returns:
The value that was read
Throws:
IOException - if an error occurs while reading from the underlying input stream

close

public void close()
           throws IOException
Close this input stream and the underlying input stream.

Throws:
IOException - if an error occurs while closing the underlying input stream


Copyright © 2001-2010. All Rights Reserved.