| /************************************************************** |
| * |
| * 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 |