[Libreoffice-commits] core.git: xmlsecurity/inc xmlsecurity/source

Miklos Vajna vmiklos at collabora.co.uk
Thu Mar 23 10:35:15 UTC 2017


 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(-)

New commits:
commit 59b091bd81aad18cf450b8a1a7a43ab48584c60a
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Thu Mar 23 09:11:23 2017 +0100

    xmlsecurity: ImplXMLSignatureListener is only used with XMLSignatureHelper
    
    So no need to go via Link, can call those member functions directly.
    
    Change-Id: I36a5193965d23230ecc1ddca8675b3745933469d

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<LinkParamNone*,bool>   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<xml::sax::XDocumentHandler> 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<xml::sax::XDocumentHandler> 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<XMLSignatureCreationResult&,void>& rCreationResultListenerListener,
-                                                   const Link<XMLSignatureVerifyResult&,void>& rVerifyResultListenerListener,
-                                                   const Link<LinkParamNone*,void>& 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<XMLSignatureCreationResult&,void> maCreationResultListenerListener;
-    Link<XMLSignatureVerifyResult&,void>   maVerifyResultListenerListener;
-    Link<LinkParamNone*,void>              maStartVerifySignatureElementListener;
+    XMLSignatureHelper& m_rXMLSignatureHelper;
 
     css::uno::Reference<
         css::xml::sax::XDocumentHandler > m_xNextHandler;
 
 public:
-    ImplXMLSignatureListener(const Link<XMLSignatureCreationResult&,void>& rCreationResultListenerListener,
-                             const Link<XMLSignatureVerifyResult&,void>& rVerifyResultListenerListener,
-                             const Link<LinkParamNone*, void>& rStartVerifySignatureElement);
+    ImplXMLSignatureListener(XMLSignatureHelper& rXMLSignatureHelper);
     virtual ~ImplXMLSignatureListener() override;
 
     void setNextHandler(const css::uno::Reference< css::xml::sax::XDocumentHandler >& xNextHandler);


More information about the Libreoffice-commits mailing list