blob: a4875a376b1e051b4f9e948202a83e6202422450 [file] [log] [blame]
/**************************************************************
*
* 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
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef __com_sun_star_ucb_XCachedDynamicResultSetStubFactory_idl__
#define __com_sun_star_ucb_XCachedDynamicResultSetStubFactory_idl__
#ifndef __com_sun_star_uno_XInterface_idl__
#include <com/sun/star/uno/XInterface.idl>
#endif
#ifndef __com_sun_star_ucb_XDynamicResultSet_idl__
#include <com/sun/star/ucb/XDynamicResultSet.idl>
#endif
#ifndef __com_sun_star_ucb_NumberedSortingInfo_idl__
#include <com/sun/star/ucb/NumberedSortingInfo.idl>
#endif
#ifndef __com_sun_star_ucb_XAnyCompareFactory_idl__
#include <com/sun/star/ucb/XAnyCompareFactory.idl>
#endif
//=============================================================================
module com { module sun { module star { module ucb {
//=============================================================================
/** creates a <type>CachedDynamicResultSetStub</type> and connects a non-remote
optimized <type>DynamicResultSet</type> to a remote optimized
<type>CachedDynamicResultSet</type>.
<p>Pay attention to instanciate this helper on serverside where your source
<type>DynamicResultSet</type> was instanciated.
<p>Method
<member>XCachedDynamicResultSetStubFactory::createCachedDynamicResultSetStub</member>
can be used to create a stub on serverside.
<p>If you have instanciated a <type>CachedDynamicResultSet</type> on client
side already, use method <member>connectToCache</member> to connect your
given DynamicResultSet with this Cache.
<p>The needed cache on server side you can create using
<type>XCachedDynamicResultSetFactory</type>.
*/
published interface XCachedDynamicResultSetStubFactory: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
/** creates a remote optimizes <type>XDynamicResultSet</type>.
@param Source
must be an instance of service <type>DynamicResultSet</type>.
@returns
an instance of service <type>CachedDynamicResultSetStub</type>.
*/
com::sun::star::ucb::XDynamicResultSet createCachedDynamicResultSetStub(
[in] com::sun::star::ucb::XDynamicResultSet Source );
//-------------------------------------------------------------------------
/** If you have instanciated a <type>CachedDynamicResultSet</type> on
client side already, use this to connect your given Source on server
side to the TargetCache.
@param Source
is an instance of service <type>DynamicResultSet</type>.
@param TargetCache
is an instance of service <type>CachedDynamicResultSet</type>.
@param SortingInfo
can be an empty sequence. Otherwise, Source will be sorted according
to the given sorting data.
@param CompareFactory
will be ignored unless SortingInfo is not empty. Then the supplied
factory will be used to instanciate objects used to compare the
properties that are involved in sorting.
@throws ListenerAlreadySetException
if <member>Source</member> is already in use.
@throws AlreadyInitializedException
if <member>TargetCache</member> already has been initialized.
*/
void connectToCache(
[in] com::sun::star::ucb::XDynamicResultSet Source
, [in] com::sun::star::ucb::XDynamicResultSet TargetCache
, [in] sequence< com::sun::star::ucb::NumberedSortingInfo > SortingInfo
, [in] com::sun::star::ucb::XAnyCompareFactory CompareFactory
)
raises(
com::sun::star::ucb::ListenerAlreadySetException
, com::sun::star::ucb::AlreadyInitializedException
);
};
//=============================================================================
}; }; }; };
#endif