diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2014-07-02 14:14:12 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2014-07-02 14:56:53 +0200 |
commit | b807a02850e4b5cc25707e5af8eb36d76c76af61 (patch) | |
tree | 4269cfca9620fae278497c0bc612dfe727c9a9c4 | |
parent | a9fc9f4a9f20fdcc00bf1860fe8445b130b1d736 (diff) |
InteractionSupplyName is a detail of SimpleNameClashResolveRequest
Change-Id: Iecc77b1c4749bd14ce79f1a7f3e98f45fa3abbba
-rw-r--r-- | include/ucbhelper/interactionrequest.hxx | 54 | ||||
-rw-r--r-- | include/ucbhelper/simplenameclashresolverequest.hxx | 9 | ||||
-rw-r--r-- | ucb/source/core/ucbcmds.cxx | 1 | ||||
-rw-r--r-- | ucbhelper/source/provider/interactionrequest.cxx | 104 | ||||
-rw-r--r-- | ucbhelper/source/provider/simplenameclashresolverequest.cxx | 127 |
5 files changed, 132 insertions, 163 deletions
diff --git a/include/ucbhelper/interactionrequest.hxx b/include/ucbhelper/interactionrequest.hxx index 51883c7f891c..a6d04477aec7 100644 --- a/include/ucbhelper/interactionrequest.hxx +++ b/include/ucbhelper/interactionrequest.hxx @@ -28,7 +28,6 @@ #include <com/sun/star/task/XInteractionDisapprove.hpp> #include <com/sun/star/ucb/XInteractionReplaceExistingData.hpp> #include <com/sun/star/ucb/XInteractionSupplyAuthentication2.hpp> -#include <com/sun/star/ucb/XInteractionSupplyName.hpp> #include <rtl/ref.hxx> #include <cppuhelper/weak.hxx> #include <ucbhelper/ucbhelperdllapi.h> @@ -626,59 +625,6 @@ inline InteractionSupplyAuthentication::InteractionSupplyAuthentication( /** * This class implements a standard interaction continuation, namely the - * interface XInteractionSupplyName. Instances of this class can be passed - * along with an interaction request to indicate the possibility to - * supply a new name. - */ -class InteractionSupplyName : public InteractionContinuation, - public com::sun::star::lang::XTypeProvider, - public com::sun::star::ucb::XInteractionSupplyName -{ - OUString m_aName; - -public: - InteractionSupplyName( InteractionRequest * pRequest ) - : InteractionContinuation( pRequest ) {} - - // XInterface - virtual com::sun::star::uno::Any SAL_CALL - queryInterface( const com::sun::star::uno::Type & rType ) - throw( com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE; - virtual void SAL_CALL acquire() - throw() SAL_OVERRIDE; - virtual void SAL_CALL release() - throw() SAL_OVERRIDE; - - // XTypeProvider - virtual com::sun::star::uno::Sequence< com::sun::star::uno::Type > SAL_CALL - getTypes() - throw( com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE; - virtual com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL - getImplementationId() - throw( com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE; - - // XInteractionContinuation - virtual void SAL_CALL select() - throw( com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE; - - // XInteractionSupplyName - virtual void SAL_CALL setName( const OUString& Name ) - throw ( com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE; - - // Non-interface methods. - - /** - * This method returns the name that was supplied by the interaction - * handler. - * - * @return the name. - */ - const OUString & getName() const { return m_aName; } -}; - - -/** - * This class implements a standard interaction continuation, namely the * interface XInteractionReplaceExistingData. Instances of this class can be * passed along with an interaction request to indicate the possibility to * replace existing data. diff --git a/include/ucbhelper/simplenameclashresolverequest.hxx b/include/ucbhelper/simplenameclashresolverequest.hxx index 33a58b3baed6..c773097a961e 100644 --- a/include/ucbhelper/simplenameclashresolverequest.hxx +++ b/include/ucbhelper/simplenameclashresolverequest.hxx @@ -26,6 +26,8 @@ namespace ucbhelper { +class InteractionSupplyName; + /** * This class implements a simple name clash resolve interaction request. * Instances can be passed directly to XInteractionHandler::handle(...). Each @@ -36,12 +38,13 @@ namespace ucbhelper { * @see com::sun::star::ucb::NameClashResolveRequest * @see InteractionAbort * @see InteractioneplaceExistingData - * @see InteractionSupplyName */ class UCBHELPER_DLLPUBLIC SimpleNameClashResolveRequest : public ucbhelper::InteractionRequest { rtl::Reference< InteractionSupplyName > m_xNameSupplier; + virtual ~SimpleNameClashResolveRequest(); + public: /** * Constructor. @@ -65,9 +68,7 @@ public: * * @return the new name, if supplied. */ - const OUString getNewName() const - { return m_xNameSupplier->getName(); } - + const OUString getNewName() const; }; } // namespace ucbhelper diff --git a/ucb/source/core/ucbcmds.cxx b/ucb/source/core/ucbcmds.cxx index c4ed448d42ac..22c69608354c 100644 --- a/ucb/source/core/ucbcmds.cxx +++ b/ucb/source/core/ucbcmds.cxx @@ -56,6 +56,7 @@ #include <com/sun/star/ucb/XContentAccess.hpp> #include <com/sun/star/ucb/XContentCreator.hpp> #include <com/sun/star/ucb/XDynamicResultSet.hpp> +#include <com/sun/star/ucb/XInteractionSupplyName.hpp> #include <com/sun/star/uno/Any.hxx> #include <com/sun/star/uno/Sequence.hxx> #include <ucbhelper/cancelcommandexecution.hxx> diff --git a/ucbhelper/source/provider/interactionrequest.cxx b/ucbhelper/source/provider/interactionrequest.cxx index c1d46179df7a..18f15e100e3f 100644 --- a/ucbhelper/source/provider/interactionrequest.cxx +++ b/ucbhelper/source/provider/interactionrequest.cxx @@ -849,110 +849,6 @@ void SAL_CALL InteractionSupplyAuthentication::setUseSystemCredentials( -// InteractionSupplyName Implementation. - - - - - - -// XInterface methods. - - - -// virtual -void SAL_CALL InteractionSupplyName::acquire() - throw() -{ - OWeakObject::acquire(); -} - - -// virtual -void SAL_CALL InteractionSupplyName::release() - throw() -{ - OWeakObject::release(); -} - - -// virtual -uno::Any SAL_CALL -InteractionSupplyName::queryInterface( const uno::Type & rType ) - throw ( uno::RuntimeException, std::exception ) -{ - uno::Any aRet = cppu::queryInterface( rType, - static_cast< lang::XTypeProvider * >( this ), - static_cast< task::XInteractionContinuation * >( this ), - static_cast< ucb::XInteractionSupplyName * >( this ) ); - - return aRet.hasValue() - ? aRet : InteractionContinuation::queryInterface( rType ); -} - - - -// XTypeProvider methods. - - - -// virtual -uno::Sequence< sal_Int8 > SAL_CALL InteractionSupplyName::getImplementationId() - throw( uno::RuntimeException, std::exception ) -{ - return css::uno::Sequence<sal_Int8>(); -} - - -// virtual -uno::Sequence< uno::Type > SAL_CALL InteractionSupplyName::getTypes() - throw( uno::RuntimeException, std::exception ) -{ - static cppu::OTypeCollection* pCollection = 0; - if ( !pCollection ) - { - osl::Guard< osl::Mutex > aGuard( osl::Mutex::getGlobalMutex() ); - if ( !pCollection ) - { - static cppu::OTypeCollection collection( - cppu::UnoType<lang::XTypeProvider>::get(), - cppu::UnoType<ucb::XInteractionSupplyName>::get() ); - pCollection = &collection; - } - } - return (*pCollection).getTypes(); -} - - - -// XInteractionContinuation methods. - - - -// virtual -void SAL_CALL InteractionSupplyName::select() - throw( uno::RuntimeException, std::exception ) -{ - recordSelection(); -} - - - -// XInteractionSupplyName methods. - - - -// virtual -void SAL_CALL -InteractionSupplyName::setName( const OUString& Name ) - throw( uno::RuntimeException, std::exception ) -{ - m_aName = Name; -} - - - - // InteractionReplaceExistingData Implementation. diff --git a/ucbhelper/source/provider/simplenameclashresolverequest.cxx b/ucbhelper/source/provider/simplenameclashresolverequest.cxx index b5d8b8567558..b1d2a48afa9d 100644 --- a/ucbhelper/source/provider/simplenameclashresolverequest.cxx +++ b/ucbhelper/source/provider/simplenameclashresolverequest.cxx @@ -18,11 +18,129 @@ */ #include <com/sun/star/ucb/NameClashResolveRequest.hpp> +#include <com/sun/star/ucb/XInteractionSupplyName.hpp> +#include <cppuhelper/typeprovider.hxx> #include <ucbhelper/simplenameclashresolverequest.hxx> using namespace com::sun::star; -using namespace ucbhelper; +namespace ucbhelper { + +/** + * This class implements a standard interaction continuation, namely the + * interface XInteractionSupplyName. Instances of this class can be passed + * along with an interaction request to indicate the possibility to + * supply a new name. + */ +class InteractionSupplyName : public InteractionContinuation, + public com::sun::star::lang::XTypeProvider, + public com::sun::star::ucb::XInteractionSupplyName +{ + OUString m_aName; + +public: + InteractionSupplyName( InteractionRequest * pRequest ) + : InteractionContinuation( pRequest ) {} + + // XInterface + virtual com::sun::star::uno::Any SAL_CALL + queryInterface( const com::sun::star::uno::Type & rType ) + throw( com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE; + virtual void SAL_CALL acquire() + throw() SAL_OVERRIDE; + virtual void SAL_CALL release() + throw() SAL_OVERRIDE; + + // XTypeProvider + virtual com::sun::star::uno::Sequence< com::sun::star::uno::Type > SAL_CALL + getTypes() + throw( com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE; + virtual com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL + getImplementationId() + throw( com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE; + + // XInteractionContinuation + virtual void SAL_CALL select() + throw( com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE; + + // XInteractionSupplyName + virtual void SAL_CALL setName( const OUString& Name ) + throw ( com::sun::star::uno::RuntimeException, std::exception ) SAL_OVERRIDE; + + // Non-interface methods. + + /** + * This method returns the name that was supplied by the interaction + * handler. + * + * @return the name. + */ + const OUString & getName() const { return m_aName; } +}; + +void SAL_CALL InteractionSupplyName::acquire() + throw() +{ + OWeakObject::acquire(); +} + +void SAL_CALL InteractionSupplyName::release() + throw() +{ + OWeakObject::release(); +} + +uno::Any SAL_CALL +InteractionSupplyName::queryInterface( const uno::Type & rType ) + throw ( uno::RuntimeException, std::exception ) +{ + uno::Any aRet = cppu::queryInterface( rType, + static_cast< lang::XTypeProvider * >( this ), + static_cast< task::XInteractionContinuation * >( this ), + static_cast< ucb::XInteractionSupplyName * >( this ) ); + + return aRet.hasValue() + ? aRet : InteractionContinuation::queryInterface( rType ); +} + +uno::Sequence< sal_Int8 > SAL_CALL InteractionSupplyName::getImplementationId() + throw( uno::RuntimeException, std::exception ) +{ + return css::uno::Sequence<sal_Int8>(); +} + +uno::Sequence< uno::Type > SAL_CALL InteractionSupplyName::getTypes() + throw( uno::RuntimeException, std::exception ) +{ + static cppu::OTypeCollection* pCollection = 0; + if ( !pCollection ) + { + osl::Guard< osl::Mutex > aGuard( osl::Mutex::getGlobalMutex() ); + if ( !pCollection ) + { + static cppu::OTypeCollection collection( + cppu::UnoType<lang::XTypeProvider>::get(), + cppu::UnoType<ucb::XInteractionSupplyName>::get() ); + pCollection = &collection; + } + } + return (*pCollection).getTypes(); +} + +void SAL_CALL InteractionSupplyName::select() + throw( uno::RuntimeException, std::exception ) +{ + recordSelection(); +} + +void SAL_CALL +InteractionSupplyName::setName( const OUString& Name ) + throw( uno::RuntimeException, std::exception ) +{ + m_aName = Name; +} + +SimpleNameClashResolveRequest::~SimpleNameClashResolveRequest() {} SimpleNameClashResolveRequest::SimpleNameClashResolveRequest( const OUString & rTargetFolderURL, @@ -55,4 +173,11 @@ SimpleNameClashResolveRequest::SimpleNameClashResolveRequest( setContinuations( aContinuations ); } +const OUString SimpleNameClashResolveRequest::getNewName() const +{ + return m_xNameSupplier->getName(); +} + +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |