org.firebirdsql.gds.impl.wire

## Interface Xdrable

    public interface Xdrable

The interface `Xdrable` represents an object that can read and write itself from a strean in the xdr format used by the firebird engine.

Author:
  David Jencks

### Method Summary

All Methods Instance Methods Abstract Methods
`int` `getLength()` Get the total length (in bytes) of this `Xdrable` when it is written to XDR format.
`void` `read(XdrInputStream in, int length)` Read in `Xdrable` in XDR format, from an `XdrInputStream`.
`void` `write(XdrOutputStream out)` Write the this `Xdrable` out in XDR format to an `XdrOutputStream`.

### Method Detail

#### getLength

    int getLength()

Get the total length (in bytes) of this `Xdrable` when it is written to XDR format.

Returns:
  The total length in bytes

#### read

    void read(XdrInputStream in,
              int length)
       throws java.io.IOException

Read in `Xdrable` in XDR format, from an `XdrInputStream`.

Parameters:
  `in` - The input stream from which the object is to be read.
  `length` - The number of bytes to be read
Throws:
  `java.io.IOException` - if an error occurs while reading from the `XdrInputStream`

#### write

    void write(XdrOutputStream out)
        throws java.io.IOException

Write the this `Xdrable` out in XDR format to an `XdrOutputStream`.

Parameters:
  `out` - The output stream to which the `Xdrable` is to be written
Throws:
  `java.io.IOException` - if an error occurs while writing to the `XdrOutputStream`