1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27#ifndef __com_sun_star_ucb_XFetchProviderForContentAccess_idl__
28#define __com_sun_star_ucb_XFetchProviderForContentAccess_idl__
29
30#ifndef __com_sun_star_uno_XInterface_idl__
31#include <com/sun/star/uno/XInterface.idl>
32#endif
33
34#ifndef __com_sun_star_ucb_FetchResult_idl__
35#include <com/sun/star/ucb/FetchResult.idl>
36#endif
37
38//=============================================================================
39
40module com { module sun { module star { module ucb {
41
42//=============================================================================
43/** provides the possibility to load information offered by a
44	<type>XContentAccess</type> for several rows of a
45	<type>ContentResultSet</type> with a single function call.
46*/
47published interface XFetchProviderForContentAccess: com::sun::star::uno::XInterface
48{
49	//-------------------------------------------------------------------------
50	/** returns the content identifier strings of the columns of the indicated
51	    rows
52
53		@returns
54		<member>FetchResult::Rows</member> contains a sequence of anys. Each
55		of these anys contains a string.
56
57		@param nRowStartPosition
58		the starting row of the resultset
59
60		@param nRowCount
61		the count of rows
62
63		@param bDirection
64		<TRUE/>, if you want the rows to be read in the same order, as they
65		are contained in the result set	( <TRUE/> &lt;-&gt; forward step;
66		<FALSE/> &lt;-&gt; backward step )
67	*/
68	com::sun::star::ucb::FetchResult
69		 fetchContentIdentifierStrings( [in] long nRowStartPosition
70									  , [in] long nRowCount
71									  , [in] boolean bDirection );
72
73	//-------------------------------------------------------------------------
74	/** returns the <type>XContentIdentifier</type>s of the columns of the
75	    indicated rows
76
77		@returns
78		<member>FetchResult::Rows</member> contains a sequence of anys. Each
79		of these anys contains an <type>XContentIdentifier</type>.
80
81		@param nRowStartPosition
82		the starting row of the resultset
83
84		@param nRowCount
85		the count of rows
86
87		@param bDirection
88		<TRUE/>, if you want the rows to be read in the same order, as they
89		are contained in the result set	( <TRUE/> &lt;-&gt; forward step;
90		<FALSE/> &lt;-&gt; backward step )
91	*/
92	com::sun::star::ucb::FetchResult
93		 fetchContentIdentifiers( [in] long nRowStartPosition
94								, [in] long nRowCount
95								, [in] boolean bDirection );
96
97	//-------------------------------------------------------------------------
98	/** returns the <type>XContent</types>s of the columns of the indicated rows
99
100		@returns
101		<member>FetchResult::Rows</member> contains a sequence of anys. Each
102		of these anys contains an <type>XContent</type>.
103
104		@param nRowStartPosition
105		the starting row of the resultset
106
107		@param nRowCount
108		the count of rows
109
110		@param bDirection
111		<TRUE/>, if you want the rows to be read in the same order, as they
112		are contained in the result set	( <TRUE/> &lt;-&gt; forward step;
113		<FALSE/> &lt;-&gt; backward step )
114	*/
115	com::sun::star::ucb::FetchResult
116		 fetchContents( [in] long nRowStartPosition
117					  , [in] long nRowCount
118					  , [in] boolean bDirection );
119};
120
121//=============================================================================
122
123}; }; }; };
124
125#endif
126