/************************************************************************* /* SQLInput.java -- Read SQL values from a stream /* /* Copyright (c) 1999 Free Software Foundation, Inc. /* Written by Aaron M. Renn (arenn@urbanophile.com) /* /* This library is free software; you can redistribute it and/or modify /* it under the terms of the GNU Library General Public License as published /* by the Free Software Foundation, either version 2 of the License, or /* (at your option) any later verion. /* /* This library is distributed in the hope that it will be useful, but /* WITHOUT ANY WARRANTY; without even the implied warranty of /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the /* GNU Library General Public License for more details. /* /* You should have received a copy of the GNU Library General Public License /* along with this library; if not, write to the Free Software Foundation /* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA /*************************************************************************/ package java.sql; import java.io.InputStream; import java.io.Reader; import java.math.BigDecimal; /** * This interface provides methods for reading values from a stream * that is connected to a SQL structured or distinct type. It is used * for custom mapping of user defined data types. * * @author Aaron M. Renn (arenn@urbanophile.com) */ public abstract interface SQLInput { /*************************************************************************/ /** * This method reads the next item from the stream a Java * String. * * @return The value read from the stream as a String. * * @exception SQLException If an error occurs. */ public abstract String readString() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * boolean. * * @return The value read from the stream as a boolean. * * @exception SQLException If an error occurs. */ public abstract boolean readBoolean() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * byte. * * @return The value read from the stream as a byte. * * @exception SQLException If an error occurs. */ public abstract byte readByte() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * short. * * @return The value read from the stream as a short. * * @exception SQLException If an error occurs. */ public abstract short readShort() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * int. * * @return The value read from the stream as an int. * * @exception SQLException If an error occurs. */ public abstract int readInt() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * long. * * @return The value read from the stream as a long. * * @exception SQLException If an error occurs. */ public abstract long readLong() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * float. * * @return The value read from the stream as a float. * * @exception SQLException If an error occurs. */ public abstract float readFloat() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * double. * * @return The value read from the stream as a double. * * @exception SQLException If an error occurs. */ public abstract double readDouble() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * BigDecimal. * * @return The value read from the stream as a BigDecimal. * * @exception SQLException If an error occurs. */ public abstract BigDecimal readBigDecimal() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * byte array * * @return The value read from the stream as a byte array. * * @exception SQLException If an error occurs. */ public abstract byte[] readBytes() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * java.sql.Date. * * @return The value read from the stream as a java.sql.Date. * * @exception SQLException If an error occurs. */ public abstract java.sql.Date readDate() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * java.sql.Time. * * @return The value read from the stream as a java.sql.Time. * * @exception SQLException If an error occurs. */ public abstract java.sql.Time readTime() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * java.sql.Timestamp. * * @return The value read from the stream as a java.sql.Timestamp. * * @exception SQLException If an error occurs. */ public abstract java.sql.Timestamp readTimestamp() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a ASCII text * InputStream. * * @return The value read from the stream as an InputStream. * * @exception SQLException If an error occurs. */ public abstract InputStream readAsciiStream() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a binary * InputStream. * * @return The value read from the stream as an InputStream. * * @exception SQLException If an error occurs. */ public abstract InputStream readBinaryStream() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a character * Reader. * * @return The value read from the stream as a Reader. * * @exception SQLException If an error occurs. */ public abstract Reader readCharacterStream() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java * Object. * * @return The value read from the stream as an Object. * * @exception SQLException If an error occurs. */ public abstract Object readObject() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java SQL * Ref. * * @return The value read from the stream as an Ref. * * @exception SQLException If an error occurs. */ public abstract Ref readRef() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java SQL * Blob. * * @return The value read from the stream as a Blob. * * @exception SQLException If an error occurs. */ public abstract Blob readBlob() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java SQL * Clob. * * @return The value read from the stream as a Clob. * * @exception SQLException If an error occurs. */ public abstract Clob readClob() throws SQLException; /*************************************************************************/ /** * This method reads the next item from the stream a Java SQL * Array. * * @return The value read from the stream as an Array. * * @exception SQLException If an error occurs. */ public abstract Array readArray() throws SQLException; /*************************************************************************/ /** * This method tests whether or not the last value read was a SQL * NULL value. * * @return true if the last value read was a NULL, * false otherwise. * * @exception SQLException If an error occurs. */ public abstract boolean wasNull() throws SQLException; } // interface SQLInput