1*6d739b60SAndrew Rist /**************************************************************
2cdf0e10cSrcweir *
3*6d739b60SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4*6d739b60SAndrew Rist * or more contributor license agreements. See the NOTICE file
5*6d739b60SAndrew Rist * distributed with this work for additional information
6*6d739b60SAndrew Rist * regarding copyright ownership. The ASF licenses this file
7*6d739b60SAndrew Rist * to you under the Apache License, Version 2.0 (the
8*6d739b60SAndrew Rist * "License"); you may not use this file except in compliance
9*6d739b60SAndrew Rist * with the License. You may obtain a copy of the License at
10*6d739b60SAndrew Rist *
11*6d739b60SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0
12*6d739b60SAndrew Rist *
13*6d739b60SAndrew Rist * Unless required by applicable law or agreed to in writing,
14*6d739b60SAndrew Rist * software distributed under the License is distributed on an
15*6d739b60SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*6d739b60SAndrew Rist * KIND, either express or implied. See the License for the
17*6d739b60SAndrew Rist * specific language governing permissions and limitations
18*6d739b60SAndrew Rist * under the License.
19*6d739b60SAndrew Rist *
20*6d739b60SAndrew Rist *************************************************************/
21*6d739b60SAndrew Rist
22*6d739b60SAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweir // MARKER(update_precomp.py): autogen include statement, do not remove
25cdf0e10cSrcweir #include "precompiled_framework.hxx"
26cdf0e10cSrcweir
27cdf0e10cSrcweir //_________________________________________________________________________________________________________________
28cdf0e10cSrcweir // my own includes
29cdf0e10cSrcweir //_________________________________________________________________________________________________________________
30cdf0e10cSrcweir #include <comphelper/interaction.hxx>
31cdf0e10cSrcweir #include <framework/interaction.hxx>
32cdf0e10cSrcweir #include <general.h>
33cdf0e10cSrcweir
34cdf0e10cSrcweir using namespace ::com::sun::star;
35cdf0e10cSrcweir
36cdf0e10cSrcweir namespace framework{
37cdf0e10cSrcweir
38cdf0e10cSrcweir /*-************************************************************************************************************//**
39cdf0e10cSrcweir @short declaration of special continuation for filter selection
40cdf0e10cSrcweir @descr Sometimes filter detection during loading document failed. Then we need a possibility
41cdf0e10cSrcweir to ask user for his decision. These continuation transport selected filter by user to
42cdf0e10cSrcweir code user of interaction.
43cdf0e10cSrcweir
44cdf0e10cSrcweir @attention This implementation could be used one times only. We don't support a resetable continuation yet!
45cdf0e10cSrcweir Why? Normaly interaction should show a filter selection dialog and ask user for his decision.
46cdf0e10cSrcweir He can select any filter - then instances of these class will be called by handler ... or user
47cdf0e10cSrcweir close dialog without any selection. Then another continuation should be slected by handler to
48cdf0e10cSrcweir abort continuations ... Retrying isn't very usefull here ... I think.
49cdf0e10cSrcweir
50cdf0e10cSrcweir @implements XInteractionFilterSelect
51cdf0e10cSrcweir
52cdf0e10cSrcweir @base ImplInheritanceHelper1
53cdf0e10cSrcweir ContinuationBase
54cdf0e10cSrcweir
55cdf0e10cSrcweir @devstatus ready to use
56cdf0e10cSrcweir @threadsafe no (used on once position only!)
57cdf0e10cSrcweir *//*-*************************************************************************************************************/
58cdf0e10cSrcweir class ContinuationFilterSelect : public comphelper::OInteraction< ::com::sun::star::document::XInteractionFilterSelect >
59cdf0e10cSrcweir {
60cdf0e10cSrcweir // c++ interface
61cdf0e10cSrcweir public:
62cdf0e10cSrcweir ContinuationFilterSelect();
63cdf0e10cSrcweir
64cdf0e10cSrcweir // uno interface
65cdf0e10cSrcweir public:
66cdf0e10cSrcweir virtual void SAL_CALL setFilter( const ::rtl::OUString& sFilter ) throw( ::com::sun::star::uno::RuntimeException );
67cdf0e10cSrcweir virtual ::rtl::OUString SAL_CALL getFilter( ) throw( ::com::sun::star::uno::RuntimeException );
68cdf0e10cSrcweir
69cdf0e10cSrcweir // member
70cdf0e10cSrcweir private:
71cdf0e10cSrcweir ::rtl::OUString m_sFilter;
72cdf0e10cSrcweir
73cdf0e10cSrcweir }; // class ContinuationFilterSelect
74cdf0e10cSrcweir
75cdf0e10cSrcweir
76cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
77cdf0e10cSrcweir // initialize continuation with right start values
78cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
ContinuationFilterSelect()79cdf0e10cSrcweir ContinuationFilterSelect::ContinuationFilterSelect()
80cdf0e10cSrcweir : m_sFilter( ::rtl::OUString() )
81cdf0e10cSrcweir {
82cdf0e10cSrcweir }
83cdf0e10cSrcweir
84cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
85cdf0e10cSrcweir // handler should use it after selection to set user specified filter for transport
86cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
setFilter(const::rtl::OUString & sFilter)87cdf0e10cSrcweir void SAL_CALL ContinuationFilterSelect::setFilter( const ::rtl::OUString& sFilter ) throw( css::uno::RuntimeException )
88cdf0e10cSrcweir {
89cdf0e10cSrcweir m_sFilter = sFilter;
90cdf0e10cSrcweir }
91cdf0e10cSrcweir
92cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
93cdf0e10cSrcweir // read access to transported filter
94cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
getFilter()95cdf0e10cSrcweir ::rtl::OUString SAL_CALL ContinuationFilterSelect::getFilter() throw( css::uno::RuntimeException )
96cdf0e10cSrcweir {
97cdf0e10cSrcweir return m_sFilter;
98cdf0e10cSrcweir }
99cdf0e10cSrcweir
100cdf0e10cSrcweir class RequestFilterSelect_Impl : public ::cppu::WeakImplHelper1< ::com::sun::star::task::XInteractionRequest >
101cdf0e10cSrcweir {
102cdf0e10cSrcweir public:
103cdf0e10cSrcweir RequestFilterSelect_Impl( const ::rtl::OUString& sURL );
104cdf0e10cSrcweir sal_Bool isAbort () const;
105cdf0e10cSrcweir ::rtl::OUString getFilter() const;
106cdf0e10cSrcweir
107cdf0e10cSrcweir public:
108cdf0e10cSrcweir virtual ::com::sun::star::uno::Any SAL_CALL getRequest() throw( ::com::sun::star::uno::RuntimeException );
109cdf0e10cSrcweir virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionContinuation > > SAL_CALL getContinuations() throw( ::com::sun::star::uno::RuntimeException );
110cdf0e10cSrcweir
111cdf0e10cSrcweir private:
112cdf0e10cSrcweir ::com::sun::star::uno::Any m_aRequest ;
113cdf0e10cSrcweir ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionContinuation > > m_lContinuations;
114cdf0e10cSrcweir comphelper::OInteractionAbort* m_pAbort;
115cdf0e10cSrcweir ContinuationFilterSelect* m_pFilter;
116cdf0e10cSrcweir };
117cdf0e10cSrcweir
118cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
119cdf0e10cSrcweir // initialize instance with all neccessary informations
120cdf0e10cSrcweir // We use it without any further checks on our member then ...!
121cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
RequestFilterSelect_Impl(const::rtl::OUString & sURL)122cdf0e10cSrcweir RequestFilterSelect_Impl::RequestFilterSelect_Impl( const ::rtl::OUString& sURL )
123cdf0e10cSrcweir {
124cdf0e10cSrcweir ::rtl::OUString temp;
125cdf0e10cSrcweir css::uno::Reference< css::uno::XInterface > temp2;
126cdf0e10cSrcweir css::document::NoSuchFilterRequest aFilterRequest( temp ,
127cdf0e10cSrcweir temp2 ,
128cdf0e10cSrcweir sURL );
129cdf0e10cSrcweir m_aRequest <<= aFilterRequest;
130cdf0e10cSrcweir
131cdf0e10cSrcweir m_pAbort = new comphelper::OInteractionAbort;
132cdf0e10cSrcweir m_pFilter = new ContinuationFilterSelect;
133cdf0e10cSrcweir
134cdf0e10cSrcweir m_lContinuations.realloc( 2 );
135cdf0e10cSrcweir m_lContinuations[0] = css::uno::Reference< css::task::XInteractionContinuation >( m_pAbort );
136cdf0e10cSrcweir m_lContinuations[1] = css::uno::Reference< css::task::XInteractionContinuation >( m_pFilter );
137cdf0e10cSrcweir }
138cdf0e10cSrcweir
139cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
140cdf0e10cSrcweir // return abort state of interaction
141cdf0e10cSrcweir // If it is true, return value of method "getFilter()" will be unspecified then!
142cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
isAbort() const143cdf0e10cSrcweir sal_Bool RequestFilterSelect_Impl::isAbort() const
144cdf0e10cSrcweir {
145cdf0e10cSrcweir return m_pAbort->wasSelected();
146cdf0e10cSrcweir }
147cdf0e10cSrcweir
148cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
149cdf0e10cSrcweir // return user selected filter
150cdf0e10cSrcweir // Return value valid for non aborted interaction only. Please check "isAbort()" before you call these ony!
151cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
getFilter() const152cdf0e10cSrcweir ::rtl::OUString RequestFilterSelect_Impl::getFilter() const
153cdf0e10cSrcweir {
154cdf0e10cSrcweir return m_pFilter->getFilter();
155cdf0e10cSrcweir }
156cdf0e10cSrcweir
157cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
158cdf0e10cSrcweir // handler call it to get type of request
159cdf0e10cSrcweir // Is hard coded to "please select filter" here. see ctor for further informations.
160cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
getRequest()161cdf0e10cSrcweir css::uno::Any SAL_CALL RequestFilterSelect_Impl::getRequest() throw( css::uno::RuntimeException )
162cdf0e10cSrcweir {
163cdf0e10cSrcweir return m_aRequest;
164cdf0e10cSrcweir }
165cdf0e10cSrcweir
166cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
167cdf0e10cSrcweir // handler call it to get possible continuations
168cdf0e10cSrcweir // We support "abort/select_filter" only here.
169cdf0e10cSrcweir // After interaction we support read access on these continuations on our c++ interface to
170cdf0e10cSrcweir // return user decision.
171cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
getContinuations()172cdf0e10cSrcweir css::uno::Sequence< css::uno::Reference< css::task::XInteractionContinuation > > SAL_CALL RequestFilterSelect_Impl::getContinuations() throw( css::uno::RuntimeException )
173cdf0e10cSrcweir {
174cdf0e10cSrcweir return m_lContinuations;
175cdf0e10cSrcweir }
176cdf0e10cSrcweir
177cdf0e10cSrcweir
RequestFilterSelect(const::rtl::OUString & sURL)178cdf0e10cSrcweir RequestFilterSelect::RequestFilterSelect( const ::rtl::OUString& sURL )
179cdf0e10cSrcweir {
180cdf0e10cSrcweir pImp = new RequestFilterSelect_Impl( sURL );
181cdf0e10cSrcweir pImp->acquire();
182cdf0e10cSrcweir }
183cdf0e10cSrcweir
~RequestFilterSelect()184cdf0e10cSrcweir RequestFilterSelect::~RequestFilterSelect()
185cdf0e10cSrcweir {
186cdf0e10cSrcweir pImp->release();
187cdf0e10cSrcweir }
188cdf0e10cSrcweir
189cdf0e10cSrcweir
190cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
191cdf0e10cSrcweir // return abort state of interaction
192cdf0e10cSrcweir // If it is true, return value of method "getFilter()" will be unspecified then!
193cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
isAbort() const194cdf0e10cSrcweir sal_Bool RequestFilterSelect::isAbort() const
195cdf0e10cSrcweir {
196cdf0e10cSrcweir return pImp->isAbort();
197cdf0e10cSrcweir }
198cdf0e10cSrcweir
199cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
200cdf0e10cSrcweir // return user selected filter
201cdf0e10cSrcweir // Return value valid for non aborted interaction only. Please check "isAbort()" before you call these ony!
202cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
getFilter() const203cdf0e10cSrcweir ::rtl::OUString RequestFilterSelect::getFilter() const
204cdf0e10cSrcweir {
205cdf0e10cSrcweir return pImp->getFilter();
206cdf0e10cSrcweir }
207cdf0e10cSrcweir
GetRequest()208cdf0e10cSrcweir uno::Reference < task::XInteractionRequest > RequestFilterSelect::GetRequest()
209cdf0e10cSrcweir {
210cdf0e10cSrcweir return uno::Reference < task::XInteractionRequest > (pImp);
211cdf0e10cSrcweir }
212cdf0e10cSrcweir
213cdf0e10cSrcweir /*
214cdf0e10cSrcweir class RequestAmbigousFilter_Impl : public ::cppu::WeakImplHelper1< ::com::sun::star::task::XInteractionRequest >
215cdf0e10cSrcweir {
216cdf0e10cSrcweir public:
217cdf0e10cSrcweir RequestAmbigousFilter_Impl( const ::rtl::OUString& sURL ,
218cdf0e10cSrcweir const ::rtl::OUString& sSelectedFilter ,
219cdf0e10cSrcweir const ::rtl::OUString& sDetectedFilter );
220cdf0e10cSrcweir sal_Bool isAbort () const;
221cdf0e10cSrcweir ::rtl::OUString getFilter() const;
222cdf0e10cSrcweir
223cdf0e10cSrcweir virtual ::com::sun::star::uno::Any SAL_CALL getRequest () throw( ::com::sun::star::uno::RuntimeException );
224cdf0e10cSrcweir virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionContinuation > > SAL_CALL getContinuations() throw( ::com::sun::star::uno::RuntimeException );
225cdf0e10cSrcweir
226cdf0e10cSrcweir ::com::sun::star::uno::Any m_aRequest ;
227cdf0e10cSrcweir ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionContinuation > > m_lContinuations;
228cdf0e10cSrcweir ContinuationAbort* m_pAbort ;
229cdf0e10cSrcweir ContinuationFilterSelect* m_pFilter ;
230cdf0e10cSrcweir };
231cdf0e10cSrcweir
232cdf0e10cSrcweir RequestAmbigousFilter::RequestAmbigousFilter( const ::rtl::OUString& sURL, const ::rtl::OUString& sSelectedFilter,
233cdf0e10cSrcweir const ::rtl::OUString& sDetectedFilter )
234cdf0e10cSrcweir {
235cdf0e10cSrcweir pImp = new RequestAmbigousFilter_Impl( sURL, sSelectedFilter, sDetectedFilter );
236cdf0e10cSrcweir pImp->acquire();
237cdf0e10cSrcweir }
238cdf0e10cSrcweir
239cdf0e10cSrcweir RequestAmbigousFilter::~RequestAmbigousFilter()
240cdf0e10cSrcweir {
241cdf0e10cSrcweir pImp->release();
242cdf0e10cSrcweir }
243cdf0e10cSrcweir
244cdf0e10cSrcweir sal_Bool RequestAmbigousFilter::isAbort() const
245cdf0e10cSrcweir {
246cdf0e10cSrcweir return pImp->isAbort();
247cdf0e10cSrcweir }
248cdf0e10cSrcweir
249cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
250cdf0e10cSrcweir // return user selected filter
251cdf0e10cSrcweir // Return value valid for non aborted interaction only. Please check "isAbort()" before you call these ony!
252cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
253cdf0e10cSrcweir ::rtl::OUString RequestAmbigousFilter::getFilter() const
254cdf0e10cSrcweir {
255cdf0e10cSrcweir return pImp->getFilter();
256cdf0e10cSrcweir }
257cdf0e10cSrcweir
258cdf0e10cSrcweir uno::Reference < task::XInteractionRequest > RequestAmbigousFilter::GetRequest()
259cdf0e10cSrcweir {
260cdf0e10cSrcweir return uno::Reference < task::XInteractionRequest > (pImp);
261cdf0e10cSrcweir }
262cdf0e10cSrcweir
263cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
264cdf0e10cSrcweir // initialize instance with all neccessary informations
265cdf0e10cSrcweir // We use it without any further checks on our member then ...!
266cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
267cdf0e10cSrcweir RequestAmbigousFilter_Impl::RequestAmbigousFilter_Impl( const ::rtl::OUString& sURL ,
268cdf0e10cSrcweir const ::rtl::OUString& sSelectedFilter ,
269cdf0e10cSrcweir const ::rtl::OUString& sDetectedFilter )
270cdf0e10cSrcweir {
271cdf0e10cSrcweir ::rtl::OUString temp;
272cdf0e10cSrcweir css::uno::Reference< css::uno::XInterface > temp2;
273cdf0e10cSrcweir css::document::AmbigousFilterRequest aFilterRequest( temp ,
274cdf0e10cSrcweir temp2 ,
275cdf0e10cSrcweir sURL ,
276cdf0e10cSrcweir sSelectedFilter ,
277cdf0e10cSrcweir sDetectedFilter );
278cdf0e10cSrcweir m_aRequest <<= aFilterRequest;
279cdf0e10cSrcweir
280cdf0e10cSrcweir m_pAbort = new ContinuationAbort ;
281cdf0e10cSrcweir m_pFilter = new ContinuationFilterSelect;
282cdf0e10cSrcweir
283cdf0e10cSrcweir m_lContinuations.realloc( 2 );
284cdf0e10cSrcweir m_lContinuations[0] = css::uno::Reference< css::task::XInteractionContinuation >( m_pAbort );
285cdf0e10cSrcweir m_lContinuations[1] = css::uno::Reference< css::task::XInteractionContinuation >( m_pFilter );
286cdf0e10cSrcweir }
287cdf0e10cSrcweir
288cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
289cdf0e10cSrcweir // return abort state of interaction
290cdf0e10cSrcweir // If it is true, return value of method "getFilter()" will be unspecified then!
291cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
292cdf0e10cSrcweir sal_Bool RequestAmbigousFilter_Impl::isAbort() const
293cdf0e10cSrcweir {
294cdf0e10cSrcweir return m_pAbort->isSelected();
295cdf0e10cSrcweir }
296cdf0e10cSrcweir
297cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
298cdf0e10cSrcweir // return user selected filter
299cdf0e10cSrcweir // Return value valid for non aborted interaction only. Please check "isAbort()" before you call these ony!
300cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
301cdf0e10cSrcweir ::rtl::OUString RequestAmbigousFilter_Impl::getFilter() const
302cdf0e10cSrcweir {
303cdf0e10cSrcweir return m_pFilter->getFilter();
304cdf0e10cSrcweir }
305cdf0e10cSrcweir
306cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
307cdf0e10cSrcweir // handler call it to get type of request
308cdf0e10cSrcweir // Is hard coded to "please select filter" here. see ctor for further informations.
309cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
310cdf0e10cSrcweir css::uno::Any SAL_CALL RequestAmbigousFilter_Impl::getRequest() throw( css::uno::RuntimeException )
311cdf0e10cSrcweir {
312cdf0e10cSrcweir return m_aRequest;
313cdf0e10cSrcweir }
314cdf0e10cSrcweir
315cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
316cdf0e10cSrcweir // handler call it to get possible continuations
317cdf0e10cSrcweir // We support "abort/select_filter" only here.
318cdf0e10cSrcweir // After interaction we support read access on these continuations on our c++ interface to
319cdf0e10cSrcweir // return user decision.
320cdf0e10cSrcweir //---------------------------------------------------------------------------------------------------------
321cdf0e10cSrcweir css::uno::Sequence< css::uno::Reference< css::task::XInteractionContinuation > > SAL_CALL RequestAmbigousFilter_Impl::getContinuations() throw( css::uno::RuntimeException )
322cdf0e10cSrcweir {
323cdf0e10cSrcweir return m_lContinuations;
324cdf0e10cSrcweir }
325cdf0e10cSrcweir */
326cdf0e10cSrcweir
327cdf0e10cSrcweir class InteractionRequest_Impl : public ::cppu::WeakImplHelper1< ::com::sun::star::task::XInteractionRequest >
328cdf0e10cSrcweir {
329cdf0e10cSrcweir uno::Any m_aRequest;
330cdf0e10cSrcweir uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionContinuation > > m_lContinuations;
331cdf0e10cSrcweir
332cdf0e10cSrcweir public:
InteractionRequest_Impl(const::com::sun::star::uno::Any & aRequest,const::com::sun::star::uno::Sequence<::com::sun::star::uno::Reference<::com::sun::star::task::XInteractionContinuation>> lContinuations)333cdf0e10cSrcweir InteractionRequest_Impl( const ::com::sun::star::uno::Any& aRequest,
334cdf0e10cSrcweir const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionContinuation > > lContinuations )
335cdf0e10cSrcweir {
336cdf0e10cSrcweir m_aRequest = aRequest;
337cdf0e10cSrcweir m_lContinuations = lContinuations;
338cdf0e10cSrcweir }
339cdf0e10cSrcweir
340cdf0e10cSrcweir virtual uno::Any SAL_CALL getRequest() throw( uno::RuntimeException );
341cdf0e10cSrcweir virtual uno::Sequence< uno::Reference< task::XInteractionContinuation > > SAL_CALL getContinuations()
342cdf0e10cSrcweir throw( uno::RuntimeException );
343cdf0e10cSrcweir };
344cdf0e10cSrcweir
getRequest()345cdf0e10cSrcweir uno::Any SAL_CALL InteractionRequest_Impl::getRequest() throw( uno::RuntimeException )
346cdf0e10cSrcweir {
347cdf0e10cSrcweir return m_aRequest;
348cdf0e10cSrcweir }
349cdf0e10cSrcweir
getContinuations()350cdf0e10cSrcweir uno::Sequence< uno::Reference< task::XInteractionContinuation > > SAL_CALL InteractionRequest_Impl::getContinuations()
351cdf0e10cSrcweir throw( uno::RuntimeException )
352cdf0e10cSrcweir {
353cdf0e10cSrcweir return m_lContinuations;
354cdf0e10cSrcweir }
355cdf0e10cSrcweir
CreateRequest(const uno::Any & aRequest,const uno::Sequence<uno::Reference<task::XInteractionContinuation>> lContinuations)356cdf0e10cSrcweir uno::Reference < task::XInteractionRequest > InteractionRequest::CreateRequest(
357cdf0e10cSrcweir const uno::Any& aRequest, const uno::Sequence< uno::Reference< task::XInteractionContinuation > > lContinuations )
358cdf0e10cSrcweir {
359cdf0e10cSrcweir return new InteractionRequest_Impl( aRequest, lContinuations );
360cdf0e10cSrcweir }
361cdf0e10cSrcweir
362cdf0e10cSrcweir } // namespace framework
363