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_XCachedDynamicResultSetStubFactory_idl__ 28#define __com_sun_star_ucb_XCachedDynamicResultSetStubFactory_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_XDynamicResultSet_idl__ 35#include <com/sun/star/ucb/XDynamicResultSet.idl> 36#endif 37 38#ifndef __com_sun_star_ucb_NumberedSortingInfo_idl__ 39#include <com/sun/star/ucb/NumberedSortingInfo.idl> 40#endif 41 42#ifndef __com_sun_star_ucb_XAnyCompareFactory_idl__ 43#include <com/sun/star/ucb/XAnyCompareFactory.idl> 44#endif 45 46//============================================================================= 47 48module com { module sun { module star { module ucb { 49 50//============================================================================= 51/** creates a <type>CachedDynamicResultSetStub</type> and connects a non-remote 52 optimized <type>DynamicResultSet</type> to a remote optimized 53 <type>CachedDynamicResultSet</type>. 54 55 <p>Pay attention to instanciate this helper on serverside where your source 56 <type>DynamicResultSet</type> was instanciated. 57 58 <p>Method 59 <member>XCachedDynamicResultSetStubFactory::createCachedDynamicResultSetStub</member> 60 can be used to create a stub on serverside. 61 62 <p>If you have instanciated a <type>CachedDynamicResultSet</type> on client 63 side already, use method <member>connectToCache</member> to connect your 64 given DynamicResultSet with this Cache. 65 66 <p>The needed cache on server side you can create using 67 <type>XCachedDynamicResultSetFactory</type>. 68*/ 69 70published interface XCachedDynamicResultSetStubFactory: com::sun::star::uno::XInterface 71{ 72 //------------------------------------------------------------------------- 73 /** creates a remote optimizes <type>XDynamicResultSet</type>. 74 75 @param Source 76 must be an instance of service <type>DynamicResultSet</type>. 77 78 @returns 79 an instance of service <type>CachedDynamicResultSetStub</type>. 80 */ 81 82 com::sun::star::ucb::XDynamicResultSet createCachedDynamicResultSetStub( 83 [in] com::sun::star::ucb::XDynamicResultSet Source ); 84 85 //------------------------------------------------------------------------- 86 /** If you have instanciated a <type>CachedDynamicResultSet</type> on 87 client side already, use this to connect your given Source on server 88 side to the TargetCache. 89 90 @param Source 91 is an instance of service <type>DynamicResultSet</type>. 92 93 @param TargetCache 94 is an instance of service <type>CachedDynamicResultSet</type>. 95 96 @param SortingInfo 97 can be an empty sequence. Otherwise, Source will be sorted according 98 to the given sorting data. 99 100 @param CompareFactory 101 will be ignored unless SortingInfo is not empty. Then the supplied 102 factory will be used to instanciate objects used to compare the 103 properties that are involved in sorting. 104 105 @throws ListenerAlreadySetException 106 if <member>Source</member> is already in use. 107 108 @throws AlreadyInitializedException 109 if <member>TargetCache</member> already has been initialized. 110 */ 111 void connectToCache( 112 [in] com::sun::star::ucb::XDynamicResultSet Source 113 , [in] com::sun::star::ucb::XDynamicResultSet TargetCache 114 , [in] sequence< com::sun::star::ucb::NumberedSortingInfo > SortingInfo 115 , [in] com::sun::star::ucb::XAnyCompareFactory CompareFactory 116 ) 117 raises( 118 com::sun::star::ucb::ListenerAlreadySetException 119 , com::sun::star::ucb::AlreadyInitializedException 120 ); 121}; 122 123//============================================================================= 124 125}; }; }; }; 126 127#endif 128