/*
* Copyright (c) 2011, PostgreSQL Global Development Group
* See the LICENSE file in the project root for more information.
*/
package org.postgresql.util;
import java.sql.SQLException;
PGBinaryObject is a inteface that classes extending PGobject
can use to take advantage of more optimal binary encoding of the data type. /**
* PGBinaryObject is a inteface that classes extending {@link PGobject} can use to take advantage of
* more optimal binary encoding of the data type.
*/
public interface PGBinaryObject {
This method is called to set the value of this object.
Params: - value – data containing the binary representation of the value of the object
- offset – the offset in the byte array where object data starts
Throws: - SQLException – thrown if value is invalid for this type
/**
* This method is called to set the value of this object.
*
* @param value data containing the binary representation of the value of the object
* @param offset the offset in the byte array where object data starts
* @throws SQLException thrown if value is invalid for this type
*/
void setByteValue(byte[] value, int offset) throws SQLException;
This method is called to return the number of bytes needed to store this object in the binary
form required by org.postgresql.
Returns: the number of bytes needed to store this object
/**
* This method is called to return the number of bytes needed to store this object in the binary
* form required by org.postgresql.
*
* @return the number of bytes needed to store this object
*/
int lengthInBytes();
This method is called the to store the value of the object, in the binary form required by
org.postgresql.
Params: - bytes – the array to store the value, it is guaranteed to be at lest
lengthInBytes
in size. - offset – the offset in the byte array where object must be stored
/**
* This method is called the to store the value of the object, in the binary form required by
* org.postgresql.
*
* @param bytes the array to store the value, it is guaranteed to be at lest
* {@link #lengthInBytes} in size.
* @param offset the offset in the byte array where object must be stored
*/
void toBytes(byte[] bytes, int offset);
}