25 #include <com/sun/star/task/XInteractionAbort.hpp>
26 #include <osl/diagnose.h>
38 public task::XInteractionContinuation
44 InteractionContinuationImpl(
Type const & type,
bool * pselect )
51 virtual void SAL_CALL acquire() throw () override;
52 virtual
void SAL_CALL release() throw () override;
53 virtual Any SAL_CALL queryInterface(
Type const & type ) override;
56 virtual
void SAL_CALL select() override;
61 void InteractionContinuationImpl::acquire() throw ()
63 OWeakObject::acquire();
67 void InteractionContinuationImpl::release() throw ()
69 OWeakObject::release();
73 Any InteractionContinuationImpl::queryInterface(
Type const & type )
75 if (type.isAssignableFrom( m_type )) {
76 Reference<task::XInteractionContinuation> xThis(
this);
77 return Any( &xThis, type );
80 return OWeakObject::queryInterface(type);
85 void InteractionContinuationImpl::select()
94 Type const & continuation,
96 bool * pcont,
bool * pabort )
102 Reference<task::XInteractionHandler> xInteractionHandler(
103 xCmdEnv->getInteractionHandler() );
104 if (xInteractionHandler.is()) {
107 std::vector< Reference<task::XInteractionContinuation> > conts {
108 new InteractionContinuationImpl(continuation, &cont ),
110 xInteractionHandler->handle(
111 new ::comphelper::OInteractionRequest( request, conts ) );
113 if (pcont !=
nullptr)
115 if (pabort !=
nullptr)
126 void AbortChannel::sendAbort()
130 m_xNext->sendAbort();
bool isAssignableFrom(const Type &_rAssignable, const Type &_rFrom)
DESKTOP_DEPLOYMENTMISC_DLLPUBLIC bool interactContinuation(css::uno::Any const &request, css::uno::Type const &continuation, css::uno::Reference< css::ucb::XCommandEnvironment > const &xCmdEnv, bool *pcont, bool *pabort)