Module org.firebirdsql.jaybird
Package 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

Modifier and Type
Method
Description
`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 Details

### 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 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:
  `IOException` - if an error occurs while reading from the `XdrInputStream`

### write

void write(XdrOutputStream out) throws 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:
  `IOException` - if an error occurs while writing to the `XdrOutputStream`