summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/sdbc/XBlob.idl
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/sdbc/XBlob.idl')
-rw-r--r--offapi/com/sun/star/sdbc/XBlob.idl203
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