diff options
Diffstat (limited to 'offapi/com/sun/star/sdbc/ResultSet.idl')
-rw-r--r-- | offapi/com/sun/star/sdbc/ResultSet.idl | 236 |
1 files changed, 236 insertions, 0 deletions
diff --git a/offapi/com/sun/star/sdbc/ResultSet.idl b/offapi/com/sun/star/sdbc/ResultSet.idl new file mode 100644 index 000000000..69f1cd617 --- /dev/null +++ b/offapi/com/sun/star/sdbc/ResultSet.idl @@ -0,0 +1,236 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_sdbc_ResultSet_idl__ +#define __com_sun_star_sdbc_ResultSet_idl__ + +#include <com/sun/star/lang/XComponent.idl> + +#include <com/sun/star/beans/XPropertySet.idl> + +#include <com/sun/star/util/XCancellable.idl> + + module com { module sun { module star { module sdbc { + + published interface XStatement; + published interface XRow; + published interface XRowUpdate; + published interface XResultSet; + published interface XResultSetUpdate; + published interface XResultSetMetaDataSupplier; + published interface XWarningsSupplier; + published interface XColumnLocate; + published interface XCloseable; + + +/** provides access to a table of data. A ResultSet + object is usually generated by executing a Statement. + + + + <p> + A ResultSet maintains a cursor pointing to its current row of + data. Initially the cursor is positioned before the first row. + The "next" method moves the cursor to the next row. + </p> + <p> + The getXXX methods retrieve column values for the current + row. You can retrieve values using either the index number of the + column. Columns are numbered from 1. + </p> + <p> + For maximum portability, ResultSet columns within each row should be + read in left-to-right order and each column should be read only once. + </p> + <p> + For the getXXX methods, the SDBC driver attempts to convert the + underlying data to the specified type and returns a suitable + value. + </p> + <p> + Column names used as input to the findColumn method are case + insensitive. When several columns have the same name, then the value + of the first matching column will be returned. The column name option is + designed to be used when column names are used in the SQL + query. For columns that are NOT explicitly named in the query, it + is best to use column numbers. If column names are used, there is + no way for the programmer to guarantee that they actually refer to + the intended columns. + </p> + <p> + A ResultSet is automatically closed (disposed) by the Statement that + generated it when that Statement is closed, re-executed, or used + to retrieve the next result from a sequence of multiple results. + </p> + <p> + The number, types, and properties of a ResultSet's columns are + provided by the ResultSetMetaData object returned by the getMetaData + method. + </p> + */ +published service ResultSet +{ + + /** optional for implementation; controls the releasing of resources + and the notification of registered listeners. + */ + [optional] interface com::sun::star::lang::XComponent; + + + /** freeing all resources of a result set. + + <p> + The creating statement will still be open after disposing. + </p> + + <p> + This interface is mandatory only for JDBC conformance, + otherwise it is optional. + </p> + */ + [optional] interface XCloseable; + + // gives access to the properties. + interface com::sun::star::beans::XPropertySet; + + + /** controls the chaining of warnings, which may occur on every call + to the connected database. + + <p> + Chained warnings from previous calls will be cleared before processing a new call. + </p> + + <p> + This interface is mandatory only for JDBC conformance, otherwise it is optional. + </p> + */ + [optional] interface XWarningsSupplier; + + + /** provides the access to the result set description. + */ + interface XResultSetMetaDataSupplier; + + + /** is the interface for navigating on the rows on a result set. + */ + interface XResultSet; + + + /** is the interface for updating row data to the database. + + <p> + The implementation is optional. + </p> + */ + [optional] interface XResultSetUpdate; + + + /** is the interface for accessing the data of the current row. + */ + interface XRow; + + + /** is used for locating a column by its name. + */ + interface XColumnLocate; + + + /** is the interface for updating the data of the current row. + + <p> + The implementation is optional. + </p> + */ + [optional] interface XRowUpdate; + + + /** defines the SQL cursor name that will be used by subsequent Statement + <code>execute</code> + methods. + + + <p> + This name can then be used in SQL positioned update/delete statements to + identify the current row in the ResultSet generated by this statement. If + the database doesn't support positioned update/delete, this property is + a noop. To ensure that a cursor has the proper isolation level to support + updates, the cursor's SELECT statement should be of the form + "select for update ...". If the "for update" phrase is omitted, + positioned updates may fail. + </p> + <p> + <b> + Note: + </b> + By definition, positioned update/delete + execution must be done by a different Statement than the one + which generated the ResultSet being used for positioning. Also, + cursor names must be unique within a connection. + </p> + */ + [optional, readonly, property] string CursorName; + + + /** retrieves the result set concurrency. + + @see com::sun::star::sdbc::ResultSetConcurrency + */ + [readonly, property] long ResultSetConcurrency; + + + /** determines the result set type. + + @see com::sun::star::sdbc::ResultSetType + */ + [readonly, property] long ResultSetType; + + + /** retrieves the direction for fetching rows from database tables + that is the default for result sets generated from this + com::sun::star::sdbcx::Statement + object. + <br/> + If this <code>Statement</code> object has not set a fetch direction, + the return value is implementation-specific. + */ + [property] long FetchDirection; + + + /** retrieves the number of result set rows that is the default fetch size + for result sets generated from this + com::sun::star::sdbcx::Statement + object. + <br/> + If this + com::sun::star::sdbcx::Statement + object has not set a fetch size, + the return value is implementation-specific. + */ + [property] long FetchSize; +}; + + +}; }; }; }; + +/*=========================================================================== +===========================================================================*/ +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |