| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| #ifndef __com_sun_star_sdbc_XSQLInput_idl__ |
| #define __com_sun_star_sdbc_XSQLInput_idl__ |
| |
| #ifndef __com_sun_star_uno_XInterface_idl__ |
| #include <com/sun/star/uno/XInterface.idl> |
| #endif |
| |
| #ifndef __com_sun_star_util_Date_idl__ |
| #include <com/sun/star/util/Date.idl> |
| #endif |
| |
| #ifndef __com_sun_star_util_DateTime_idl__ |
| #include <com/sun/star/util/DateTime.idl> |
| #endif |
| |
| #ifndef __com_sun_star_util_Time_idl__ |
| #include <com/sun/star/util/Time.idl> |
| #endif |
| |
| module com { module sun { module star { module io { |
| published interface XInputStream; |
| };};};}; |
| |
| #ifndef __com_sun_star_sdbc_SQLException_idl__ |
| #include <com/sun/star/sdbc/SQLException.idl> |
| #endif |
| |
| module com { module sun { module star { module sdbc { |
| |
| published interface XRef; |
| published interface XArray; |
| published interface XBlob; |
| published interface XClob; |
| |
| |
| /** represents an input stream that contains a stream of values representing an |
| instance of a SQL structured or distinct type. |
| |
| |
| <p> |
| This interface, used only for custom mapping, is used by the driver |
| behind the scenes, and a programmer never directly invokes |
| <code>SQLInput</code> |
| methods. |
| </p> |
| <p> |
| When the method |
| <code>getObject</code> |
| is called with an object of a service implementing the interface |
| <code>SQLData</code> |
| , the SDBC driver calls the method |
| <member scope="com::sun::star::sdbc">XSQLData::getSQLType()</member> |
| to determine the SQL type of the user-defined type (UDT) being custom mapped. |
| The driver creates an instance of |
| <type scope="com::sun::star::sdbc">XSQLInput</type> |
| , |
| populating it with the attributes of the UDT. The driver then passes the input |
| stream to the method |
| <member scope="com::sun::star::sdbc">XSQLData::readSQL()</member> |
| , which in turn calls the |
| <code>XSQLInput.readXXX</code> |
| methods in its implementation for reading the attributes from the input stream. |
| </p> |
| */ |
| published interface XSQLInput: com::sun::star::uno::XInterface |
| { |
| |
| /** reads the next attribute in the stream as string. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| string readString() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as boolean. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| boolean readBoolean() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as byte. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| byte readByte() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as short. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| short readShort() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as long. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| long readInt() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as hyper. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| hyper readLong() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as float. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| float readFloat() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as double. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| double readDouble() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as sequence of bytes. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| sequence<byte> readBytes() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as date. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| com::sun::star::util::Date readDate() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as time. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| com::sun::star::util::Time readTime() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as datetime. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| com::sun::star::util::DateTime readTimestamp() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as sequence of bytes. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| com::sun::star::io::XInputStream readBinaryStream() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads the next attribute in the stream as a unicode string. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| com::sun::star::io::XInputStream readCharacterStream() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** returns the datum at the head of the stream as an any. |
| |
| |
| <p> |
| The actual type of the any returned is determined by the default |
| type mapping, and any customizations present in this stream's type map. |
| |
| <br/> |
| A type map is registered with the stream by the SDBC driver before the |
| stream is passed to the application. |
| |
| <br/> |
| When the datum at the head of the stream is a SQL NULL, |
| the method returns <void/>. If the datum is a SQL structured or distinct |
| type, it determines the SQL type of the datum at the head of the stream, |
| constructs an object of the appropriate service, and calls the method |
| <member scope="com::sun::star::sdbc">XSQLData::readSQL()</member> |
| on that object, which reads additional data |
| from the stream using the protocol described for that method. |
| |
| </p> |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| any readObject() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads a REF(&lt;structured-type&gt;) from the stream. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| XRef readRef() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads a BLOB from the stream. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| XBlob readBlob() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads a CLOB from the stream. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| XClob readClob() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** reads an array from the stream. |
| @returns |
| the attribute; if the value is SQL NULL, return null. |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| XArray readArray() raises (SQLException); |
| //------------------------------------------------------------------------- |
| |
| /** determines whether the last value read was null. |
| @returns |
| <TRUE/> if the most recently gotten SQL value was null; otherwise, <FALSE/> |
| @throws SQLException |
| if a database access error occurs. |
| */ |
| boolean wasNull() raises (SQLException); |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; |
| |
| /*=========================================================================== |
| ===========================================================================*/ |
| #endif |