From 59b091bd81aad18cf450b8a1a7a43ab48584c60a Mon Sep 17 00:00:00 2001 From: Miklos Vajna Date: Thu, 23 Mar 2017 09:11:23 +0100 Subject: xmlsecurity: ImplXMLSignatureListener is only used with XMLSignatureHelper So no need to go via Link, can call those member functions directly. Change-Id: I36a5193965d23230ecc1ddca8675b3745933469d --- xmlsecurity/inc/xmlsignaturehelper.hxx | 8 ++++---- xmlsecurity/source/helper/xmlsignaturehelper.cxx | 16 +++++----------- xmlsecurity/source/helper/xmlsignaturehelper2.cxx | 14 +++++--------- xmlsecurity/source/helper/xmlsignaturehelper2.hxx | 8 ++------ 4 files changed, 16 insertions(+), 30 deletions(-) (limited to 'xmlsecurity') diff --git a/xmlsecurity/inc/xmlsignaturehelper.hxx b/xmlsecurity/inc/xmlsignaturehelper.hxx index eb44e52a2f83..38c88099fef5 100644 --- a/xmlsecurity/inc/xmlsignaturehelper.hxx +++ b/xmlsecurity/inc/xmlsignaturehelper.hxx @@ -103,16 +103,16 @@ private: Link maStartVerifySignatureHdl; private: - DECL_LINK( SignatureCreationResultListener, XMLSignatureCreationResult&, void ); - DECL_LINK( SignatureVerifyResultListener, XMLSignatureVerifyResult&, void ); - DECL_LINK( StartVerifySignatureElement, LinkParamNone*, void ); - XMLSignatureHelper(const XMLSignatureHelper&) = delete; public: XMLSignatureHelper(const css::uno::Reference< css::uno::XComponentContext >& mrCtx ); ~XMLSignatureHelper(); + void SignatureCreationResultListener(XMLSignatureCreationResult& rResult); + void SignatureVerifyResultListener(XMLSignatureVerifyResult& rResult); + void StartVerifySignatureElement(); + // Set the storage which should be used by the default UriBinding // Must be set before StatrtMission(). //sODFVersion indicates the ODF version diff --git a/xmlsecurity/source/helper/xmlsignaturehelper.cxx b/xmlsecurity/source/helper/xmlsignaturehelper.cxx index 36a6117c29a0..cc14bb3c01d0 100644 --- a/xmlsecurity/source/helper/xmlsignaturehelper.cxx +++ b/xmlsecurity/source/helper/xmlsignaturehelper.cxx @@ -249,10 +249,7 @@ bool XMLSignatureHelper::ReadAndVerifySignature( const css::uno::Reference< css: /* * create a signature listener */ - ImplXMLSignatureListener* pSignatureListener = new ImplXMLSignatureListener( - LINK( this, XMLSignatureHelper, SignatureCreationResultListener ), - LINK( this, XMLSignatureHelper, SignatureVerifyResultListener ), - LINK( this, XMLSignatureHelper, StartVerifySignatureElement ) ); + ImplXMLSignatureListener* pSignatureListener = new ImplXMLSignatureListener(*this); /* * configure the signature verify listener @@ -304,21 +301,21 @@ SignatureInformations XMLSignatureHelper::GetSignatureInformations() const return mpXSecController->getSignatureInformations(); } -IMPL_LINK( XMLSignatureHelper, SignatureCreationResultListener, XMLSignatureCreationResult&, rResult, void ) +void XMLSignatureHelper::SignatureCreationResultListener(XMLSignatureCreationResult& rResult) { maCreationResults.insert( maCreationResults.begin() + maCreationResults.size(), rResult ); if ( rResult.nSignatureCreationResult != css::xml::crypto::SecurityOperationStatus_OPERATION_SUCCEEDED ) mbError = true; } -IMPL_LINK( XMLSignatureHelper, SignatureVerifyResultListener, XMLSignatureVerifyResult&, rResult, void ) +void XMLSignatureHelper::SignatureVerifyResultListener(XMLSignatureVerifyResult& rResult) { maVerifyResults.insert( maVerifyResults.begin() + maVerifyResults.size(), rResult ); if ( rResult.nSignatureVerifyResult != css::xml::crypto::SecurityOperationStatus_OPERATION_SUCCEEDED ) mbError = true; } -IMPL_LINK_NOARG( XMLSignatureHelper, StartVerifySignatureElement, LinkParamNone*, void ) +void XMLSignatureHelper::StartVerifySignatureElement() { if ( !maStartVerifySignatureHdl.IsSet() || maStartVerifySignatureHdl.Call(nullptr) ) { @@ -415,10 +412,7 @@ bool XMLSignatureHelper::ReadAndVerifySignatureStorageStream(const css::uno::Ref uno::Reference xHandler = mpXSecController->createSignatureReader(embed::StorageFormats::OFOPXML); // Create the signature listener. - ImplXMLSignatureListener* pSignatureListener = new ImplXMLSignatureListener( - LINK(this, XMLSignatureHelper, SignatureCreationResultListener), - LINK(this, XMLSignatureHelper, SignatureVerifyResultListener), - LINK(this, XMLSignatureHelper, StartVerifySignatureElement)); + ImplXMLSignatureListener* pSignatureListener = new ImplXMLSignatureListener(*this); uno::Reference xSignatureListener(pSignatureListener); // Parser -> signature listener -> signature reader. diff --git a/xmlsecurity/source/helper/xmlsignaturehelper2.cxx b/xmlsecurity/source/helper/xmlsignaturehelper2.cxx index 926f445fbd16..2879336a0c55 100644 --- a/xmlsecurity/source/helper/xmlsignaturehelper2.cxx +++ b/xmlsecurity/source/helper/xmlsignaturehelper2.cxx @@ -32,13 +32,9 @@ using namespace com::sun::star; -ImplXMLSignatureListener::ImplXMLSignatureListener(const Link& rCreationResultListenerListener, - const Link& rVerifyResultListenerListener, - const Link& rStartSignatureElement) +ImplXMLSignatureListener::ImplXMLSignatureListener(XMLSignatureHelper& rXMLSignatureHelper) + : m_rXMLSignatureHelper(rXMLSignatureHelper) { - maCreationResultListenerListener = rCreationResultListenerListener; - maVerifyResultListenerListener = rVerifyResultListenerListener; - maStartVerifySignatureElementListener = rStartSignatureElement; } ImplXMLSignatureListener::~ImplXMLSignatureListener() @@ -54,13 +50,13 @@ void ImplXMLSignatureListener::setNextHandler( void SAL_CALL ImplXMLSignatureListener::signatureCreated( sal_Int32 securityId, css::xml::crypto::SecurityOperationStatus nResult ) { XMLSignatureCreationResult aResult( securityId, nResult ); - maCreationResultListenerListener.Call( aResult ); + m_rXMLSignatureHelper.SignatureCreationResultListener(aResult); } void SAL_CALL ImplXMLSignatureListener::signatureVerified( sal_Int32 securityId, css::xml::crypto::SecurityOperationStatus nResult ) { XMLSignatureVerifyResult aResult( securityId, nResult ); - maVerifyResultListenerListener.Call( aResult ); + m_rXMLSignatureHelper.SignatureVerifyResultListener(aResult); } // XDocumentHandler @@ -84,7 +80,7 @@ void SAL_CALL ImplXMLSignatureListener::startElement( const OUString& aName, con { if ( aName == "Signature" ) { - maStartVerifySignatureElementListener.Call( nullptr ); + m_rXMLSignatureHelper.StartVerifySignatureElement(); } if (m_xNextHandler.is()) diff --git a/xmlsecurity/source/helper/xmlsignaturehelper2.hxx b/xmlsecurity/source/helper/xmlsignaturehelper2.hxx index 6518aa96d610..98f9eae06389 100644 --- a/xmlsecurity/source/helper/xmlsignaturehelper2.hxx +++ b/xmlsecurity/source/helper/xmlsignaturehelper2.hxx @@ -52,17 +52,13 @@ class ImplXMLSignatureListener : public cppu::WeakImplHelper > { private: - Link maCreationResultListenerListener; - Link maVerifyResultListenerListener; - Link maStartVerifySignatureElementListener; + XMLSignatureHelper& m_rXMLSignatureHelper; css::uno::Reference< css::xml::sax::XDocumentHandler > m_xNextHandler; public: - ImplXMLSignatureListener(const Link& rCreationResultListenerListener, - const Link& rVerifyResultListenerListener, - const Link& rStartVerifySignatureElement); + ImplXMLSignatureListener(XMLSignatureHelper& rXMLSignatureHelper); virtual ~ImplXMLSignatureListener() override; void setNextHandler(const css::uno::Reference< css::xml::sax::XDocumentHandler >& xNextHandler); -- cgit