/*
* Copyright (c) 2004, PostgreSQL Global Development Group
* See the LICENSE file in the project root for more information.
*/
package org.postgresql.jdbc2;
/**
* Implement this interface and register the its instance to ArrayAssistantRegistry, to let Postgres
* driver to support more array type.
*
* @author Minglei Tu
*/
public interface
ArrayAssistant {
/**
* get array base type.
*
* @return array base type
*/
Class<?>
baseType();
/**
* build a array element from its binary bytes.
*
* @param bytes input bytes
* @param pos position in input array
* @param len length of the element
* @return array element from its binary bytes
*/
Object buildElement(byte[]
bytes, int
pos, int
len);
/**
* build an array element from its literal string.
*
* @param literal string representation of array element
* @return array element
*/
Object buildElement(
String literal);
}