tdf#39593 Remove xforms::Submission::getSubmission

Replace with comphelper::getUnoTunnelImplementation.

Change-Id: I8dcd0bf1cfbaa02fbb7c128421506f1c30d87773
Reviewed-on: https://gerrit.libreoffice.org/74387
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
diff --git a/forms/source/xforms/model.cxx b/forms/source/xforms/model.cxx
index f92e839..c413581 100644
--- a/forms/source/xforms/model.cxx
+++ b/forms/source/xforms/model.cxx
@@ -449,7 +449,7 @@
    if( mxSubmissions->hasItem( sID ) )
    {
        Submission* pSubmission =
            Submission::getSubmission( mxSubmissions->getItem( sID ) );
            comphelper::getUnoTunnelImplementation<Submission>( mxSubmissions->getItem( sID ) );
        OSL_ENSURE( pSubmission != nullptr, "no submission?" );
        OSL_ENSURE( pSubmission->getModel() == Reference<XModel>( this ),
                    "wrong model" );
diff --git a/forms/source/xforms/model_helper.hxx b/forms/source/xforms/model_helper.hxx
index b70bc23..f0a6c46 100644
--- a/forms/source/xforms/model_helper.hxx
+++ b/forms/source/xforms/model_helper.hxx
@@ -34,6 +34,7 @@
#include <com/sun/star/lang/XUnoTunnel.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <comphelper/servicehelper.hxx>

namespace xforms
{
@@ -82,20 +83,22 @@

    virtual bool isValid( const T& t ) const override
    {
        return Submission::getSubmission( t ) != nullptr;
        return comphelper::getUnoTunnelImplementation<Submission>( t ) != nullptr;
    }

protected:
    virtual void _insert( const T& t ) override
    {
        OSL_ENSURE( Submission::getSubmission( t ) != nullptr, "invalid item?" );
        Submission::getSubmission( t )->setModel( css::uno::Reference<css::xforms::XModel>( mpModel ) );
        auto pSubmission = comphelper::getUnoTunnelImplementation<Submission>( t );
        OSL_ENSURE( pSubmission != nullptr, "invalid item?" );
        pSubmission->setModel( css::uno::Reference<css::xforms::XModel>( mpModel ) );
    }

    virtual void _remove( const T& t ) override
    {
        OSL_ENSURE( Submission::getSubmission( t ) != nullptr, "invalid item?" );
        Submission::getSubmission( t )->setModel( css::uno::Reference<css::xforms::XModel>( ) );
        auto pSubmission = comphelper::getUnoTunnelImplementation<Submission>( t );
        OSL_ENSURE( pSubmission != nullptr, "invalid item?" );
        pSubmission->setModel( css::uno::Reference<css::xforms::XModel>( ) );
    }
};

diff --git a/forms/source/xforms/submission.cxx b/forms/source/xforms/submission.cxx
index 3074619..9c7a0fb 100644
--- a/forms/source/xforms/submission.cxx
+++ b/forms/source/xforms/submission.cxx
@@ -263,22 +263,12 @@
    return ( aResult == CSubmission::SUCCESS );
}

Sequence<sal_Int8> Submission::getUnoTunnelID()
Sequence<sal_Int8> Submission::getUnoTunnelId()
{
    static cppu::OImplementationId aImplementationId;
    return aImplementationId.getImplementationId();
}

Submission* Submission::getSubmission(
    const Reference<XPropertySet>& xPropertySet )
{
    Reference<XUnoTunnel> xTunnel( xPropertySet, UNO_QUERY );
    return xTunnel.is()
        ? reinterpret_cast<Submission*>(
            xTunnel->getSomething( getUnoTunnelID() ) )
        : nullptr;
}


void Submission::liveCheck()
{
@@ -386,7 +376,7 @@
sal_Int64 SAL_CALL Submission::getSomething(
    const Sequence<sal_Int8>& aId )
{
    return ( aId == getUnoTunnelID() ) ? reinterpret_cast<sal_Int64>(this) : 0;
    return ( aId == getUnoTunnelId() ) ? reinterpret_cast<sal_Int64>(this) : 0;
}


diff --git a/forms/source/xforms/submission.hxx b/forms/source/xforms/submission.hxx
index fc095d7..3f3921f 100644
--- a/forms/source/xforms/submission.hxx
+++ b/forms/source/xforms/submission.hxx
@@ -158,8 +158,7 @@
    bool doSubmit( const css::uno::Reference< css::task::XInteractionHandler >& aHandler );

    // helpers for UNO tunnel
    static css::uno::Sequence<sal_Int8> getUnoTunnelID();
    static Submission* getSubmission( const css::uno::Reference<css::beans::XPropertySet>& );
    static css::uno::Sequence<sal_Int8> getUnoTunnelId();

private: