1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 module com
{ module sun
{ module star
{ module io
{
21 published
interface XInputStream
;
24 module com
{ module sun
{ module star
{ module sdbc
{
27 /** is the representation (mapping) of an SQL <i>BLOB</i>.
34 is a built-in type that stores a
35 Binary Large Object as a column value in a row of a database table.
42 <code>locator(BLOB)</code>
45 object contains a logical pointer to the SQL
49 data rather than the data itself.
53 object is valid for the duration of the transaction in which is was created.
57 Methods in the interfaces
58 com::sun::star::sdbc::XResultSet
61 com::sun::star::sdbc::XPreparedStatement
66 allow a programmer to access the SQL
71 interface provides methods for getting the length of a SQL
75 (Binary Large Object) value, for materializing a
79 value on the client and for determining the position of a pattern of bytes within a
86 published
interface XBlob
: com
::sun
::star
::uno
::XInterface
89 /** returns the number of bytes in the
100 if a database access error occurs.
102 hyper length
() raises
(SQLException
);
105 /** returns as an array of bytes part or all of the
111 object designates. The byte
118 is the ordinal position of the first byte in the
122 value to be extracted; the first byte is at
125 is the number of consecutive bytes to be copied.
127 a byte array containing up to
129 consecutive bytes from the
136 object, starting with the byte at position
139 if there is an error accessing the <i>BLOB</i>.
141 sequence
<byte> getBytes
([in]hyper pos
, [in]long length
)
142 raises
(SQLException
);
151 instance as a stream.
155 if a database access error occurs.
157 com
::sun
::star
::io
::XInputStream getBinaryStream
()
158 raises
(SQLException
);
160 /** determines the byte position at which the specified byte
168 object represents. The
171 begins at position <code>start</code>.
174 the pattern to search
176 the start position for the search
180 if a database access error occurs.
182 hyper position
([in]sequence
<byte> pattern
, [in]hyper start
)
183 raises
(SQLException
);
186 /** determines the byte position in the
195 begins. The search begins at position <code>start</code>.
197 the pattern to search
203 if a database access error occurs.
205 hyper positionOfBlob
([in]XBlob pattern
,[in] hyper start
)
206 raises
(SQLException
);
212 /*===========================================================================
213 ===========================================================================*/
215 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */