diff options
Diffstat (limited to 'offapi/com/sun/star/sdbc/XBlob.idl')
-rw-r--r-- | offapi/com/sun/star/sdbc/XBlob.idl | 203 |
1 files changed, 203 insertions, 0 deletions
diff --git a/offapi/com/sun/star/sdbc/XBlob.idl b/offapi/com/sun/star/sdbc/XBlob.idl new file mode 100644 index 000000000000..aa8d1811805a --- /dev/null +++ b/offapi/com/sun/star/sdbc/XBlob.idl @@ -0,0 +1,203 @@ +/************************************************************************* + * + * $RCSfile: XBlob.idl,v $ + * + * $Revision: 1.1 $ + * + * last change: $Author: mi $ $Date: 2000-11-06 09:21:57 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser 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 + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (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.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef __com_sun_star_sdbc_XBlob_idl__ +#define __com_sun_star_sdbc_XBlob_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + + module com { module sun { module star { module io { +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 { + + +// DocMerge from xml: interface com::sun::star::io::com::sun::star::sdbc::XBlob +/** is the representation (mapping) of an SQL <i>BLOB</i>. + + + <p> + A SQL <i>BLOB</i> is a built-in type that stores a + Binary Large Object as a column value in a row of a database table. + The driver implements <i>BLOB</i> using a + SQL <code>locator(BLOB)</code>, which means that a <code>Blob</code> + object contains a logical pointer to the SQL <i>BLOB</i> data rather + than the data itself. + <br> + A <code>Blob</code> object is valid for the duration of the + transaction in which is was created. + + </p> + <p>Methods in the interfaces <type scope="com::sun::star::sdbc">XResultSet</type>, + and <type scope="com::sun::star::sdbc">XPreparedStatement</type>, such as + <code>getBlob</code> and <code>setBlob</code> allow a programmer to + access the SQL <i>BLOB</i>.<br> + The <code>Blob</code> interface provides methods for getting the + length of a SQL <i>BLOB</i> (Binary Large Object) value, + for materializing a <i>BLOB</i> value on the client and for + determining the position of a pattern of bytes within a + <i>BLOB</i> value.</p> + */ +[ uik(D6B6023A-9067-11d3-9EE00010-5AD7A5C4), ident("XBlob", 1.0) ] +interface XBlob: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::com::sun::star::sdbc::XBlob::length + /** returns the number of bytes in the <i>BLOB</i> value + designated by this <code>Blob</code> object. + */ + hyper length() raises (SQLException); + + //------------------------------------------------------------------------- + + // DocMerge from idl: method com::sun::star::io::com::sun::star::sdbc::XBlob::getBytes + /** returns as an array of bytes part or all of the <i>BLOB</i> + value that this <code>Blob</code> object designates. The byte + array contains up to <code>length</code> consecutive bytes + starting at position <code>pos</code>. + @param pos + is the ordinal position of the first byte in the + <i>BLOB</i> value to be extracted; the first byte is at + position 1. + @param length + is the number of consecutive bytes to be copied. + @returns + a byte array containing up to <code>length</code> + consecutive bytes from the <i>BLOB</i> value designated + by this <code>Blob</code> object, starting with the + byte at position <code>pos</code>. + @throws SQLException + if there is an error accessing the <i>BLOB</i>. + */ + sequence<byte> getBytes([in]hyper pos, [in]long length) + raises (SQLException); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::com::sun::star::sdbc::XBlob::getBinaryStream + /** retrieves the <i>BLOB</i> designated by this + <code>Blob</code> instance as a stream. + */ + com::sun::star::io::XInputStream getBinaryStream() + raises (SQLException); + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::com::sun::star::sdbc::XBlob::position + /** determines the byte position at which the specified byte + <code>pattern</code> begins within the <i>BLOB</i> + value that this <code>Blob</code> object represents. The + search for <code>pattern</code> begins at position + <code>start</code>. + */ + hyper position([in]sequence<byte> pattern, [in]hyper start) + raises (SQLException); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::com::sun::star::sdbc::XBlob::positionOfBlob + /** determines the byte position in the <i>BLOB</i> value + designated by this <code>Blob</code> object at which + <code>pattern</code> begins. The search begins at position + <code>start</code>. + */ + hyper positionOfBlob([in]XBlob pattern,[in] hyper start) + raises (SQLException); +}; + +//============================================================================= + +}; }; }; }; + +/*=========================================================================== + $Log: not supported by cvs2svn $ + Revision 1.1.1.1 2000/09/18 23:35:41 hjs + initial import + + Revision 1.8 2000/09/11 11:52:42 mi + documentation merged from XML + + Revision 1.6 2000/02/07 11:24:52 mi + zu #70728# missing documentation marked + + Revision 1.5 2000/01/14 11:09:11 mi + XML syntax error in documentation + + Revision 1.4 1999/12/20 16:11:35 dg + #70278# changes in API + + Revision 1.3 1999/12/13 13:47:54 dg + #70278# XSQLErrorBroadcaster removed + + Revision 1.2 1999/11/24 11:33:26 dg + chk includes + + Revision 1.1 1999/11/24 08:41:04 dg + new StarDataBaseConnectivity + +===========================================================================*/ +#endif |