From 5043421fdc527d18d18121ec5fe2d4e009c8191a Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Fri, 19 Jul 2019 14:05:10 +0200 Subject: loplugin:referencecasting in embeddedobj Change-Id: I11a80e540b2a7da8d8037ba45e176d5c4d85374c Reviewed-on: https://gerrit.libreoffice.org/75951 Tested-by: Jenkins Reviewed-by: Noel Grandin --- embeddedobj/source/commonembedding/embedobj.cxx | 31 +++----------- embeddedobj/source/commonembedding/miscobj.cxx | 14 ++---- embeddedobj/source/commonembedding/persistence.cxx | 50 ++++++++-------------- embeddedobj/source/commonembedding/xfactory.cxx | 5 +-- embeddedobj/source/general/docholder.cxx | 36 ++++++---------- embeddedobj/source/general/xcreator.cxx | 5 +-- embeddedobj/source/msole/oleembed.cxx | 15 +++---- embeddedobj/source/msole/olemisc.cxx | 10 ++--- 8 files changed, 56 insertions(+), 110 deletions(-) (limited to 'embeddedobj') diff --git a/embeddedobj/source/commonembedding/embedobj.cxx b/embeddedobj/source/commonembedding/embedobj.cxx index 8c888df48a9e..a34020d354e1 100644 --- a/embeddedobj/source/commonembedding/embedobj.cxx +++ b/embeddedobj/source/commonembedding/embedobj.cxx @@ -174,32 +174,13 @@ void OCommonEmbeddedObject::SwitchStateTo_Impl( sal_Int32 nNextState ) } else { - uno::Reference < embed::XEmbedPersist > xPersist( static_cast < embed::XClassifiedObject* > (this), uno::UNO_QUERY ); - if ( xPersist.is() ) - { - // in case embedded object is in loaded state the contents must - // be stored in the related storage and the storage - // must be created already - if ( !m_xObjectStorage.is() ) - throw io::IOException(); //TODO: access denied + // in case embedded object is in loaded state the contents must + // be stored in the related storage and the storage + // must be created already + if ( !m_xObjectStorage.is() ) + throw io::IOException(); //TODO: access denied - m_xDocHolder->SetComponent( LoadDocumentFromStorage_Impl(), m_bReadOnly ); - } - else - { - // objects without persistence will be initialized internally - uno::Sequence < uno::Any > aArgs(1); - aArgs[0] <<= uno::Reference < embed::XEmbeddedObject >( this ); - uno::Reference< util::XCloseable > xDocument( - m_xContext->getServiceManager()->createInstanceWithArgumentsAndContext( GetDocumentServiceName(), aArgs, m_xContext), - uno::UNO_QUERY ); - - uno::Reference < container::XChild > xChild( xDocument, uno::UNO_QUERY ); - if ( xChild.is() ) - xChild->setParent( m_xParent ); - - m_xDocHolder->SetComponent( xDocument, m_bReadOnly ); - } + m_xDocHolder->SetComponent( LoadDocumentFromStorage_Impl(), m_bReadOnly ); } if ( !m_xDocHolder->GetComponent().is() ) diff --git a/embeddedobj/source/commonembedding/miscobj.cxx b/embeddedobj/source/commonembedding/miscobj.cxx index 48da9abdeaf7..557e21e2646a 100644 --- a/embeddedobj/source/commonembedding/miscobj.cxx +++ b/embeddedobj/source/commonembedding/miscobj.cxx @@ -439,7 +439,7 @@ uno::Reference< util::XCloseable > SAL_CALL OCommonEmbeddedObject::getComponent( static_cast< ::cppu::OWeakObject* >(this) ); } - return uno::Reference< util::XCloseable >( m_xDocHolder->GetComponent(), uno::UNO_QUERY ); + return m_xDocHolder->GetComponent(); } @@ -550,15 +550,9 @@ void SAL_CALL OCommonEmbeddedObject::close( sal_Bool bDeliverOwnership ) // will use the storage, the storage will be disposed by the document and recreated by the object if ( m_xObjectStorage.is() ) { - uno::Reference< lang::XComponent > xComp( m_xObjectStorage, uno::UNO_QUERY ); - OSL_ENSURE( xComp.is(), "Storage does not support XComponent!" ); - - if ( xComp.is() ) - { - try { - xComp->dispose(); - } catch ( const uno::Exception& ) {} - } + try { + m_xObjectStorage->dispose(); + } catch ( const uno::Exception& ) {} m_xObjectStorage.clear(); m_xRecoveryStorage.clear(); diff --git a/embeddedobj/source/commonembedding/persistence.cxx b/embeddedobj/source/commonembedding/persistence.cxx index cba1be7c4d19..b4a4de81f3c5 100644 --- a/embeddedobj/source/commonembedding/persistence.cxx +++ b/embeddedobj/source/commonembedding/persistence.cxx @@ -149,10 +149,8 @@ static uno::Reference< io::XInputStream > createTempInpStreamFromStor( } try { - uno::Reference< lang::XComponent > xComponent( xTempStorage, uno::UNO_QUERY ); - SAL_WARN_IF( !xComponent.is(), "embeddedobj.common", "Wrong storage implementation!" ); - if ( xComponent.is() ) - xComponent->dispose(); + if ( xTempStorage.is() ) + xTempStorage->dispose(); } catch ( const uno::Exception& ) { @@ -252,9 +250,7 @@ void OCommonEmbeddedObject::SwitchOwnPersistence( const uno::Reference< embed::X return; } - uno::Reference< lang::XComponent > xComponent( m_xObjectStorage, uno::UNO_QUERY ); - OSL_ENSURE( !m_xObjectStorage.is() || xComponent.is(), "Wrong storage implementation!" ); - + auto xOldObjectStorage = m_xObjectStorage; m_xObjectStorage = xNewObjectStorage; m_xParentStorage = xNewParentStorage; m_aEntryName = aNewName; @@ -268,8 +264,8 @@ void OCommonEmbeddedObject::SwitchOwnPersistence( const uno::Reference< embed::X } try { - if ( xComponent.is() ) - xComponent->dispose(); + if ( xOldObjectStorage.is() ) + xOldObjectStorage->dispose(); } catch ( const uno::Exception& ) { @@ -348,12 +344,11 @@ uno::Reference< util::XCloseable > OCommonEmbeddedObject::InitNewDocument_Impl() } catch( const uno::Exception& ) { - uno::Reference< util::XCloseable > xCloseable( xDocument, uno::UNO_QUERY ); - if ( xCloseable.is() ) + if ( xDocument.is() ) { try { - xCloseable->close( true ); + xDocument->close( true ); } catch( const uno::Exception& ) { @@ -417,12 +412,11 @@ uno::Reference< util::XCloseable > OCommonEmbeddedObject::LoadLink_Impl() } catch( const uno::Exception& ) { - uno::Reference< util::XCloseable > xCloseable( xDocument, uno::UNO_QUERY ); - if ( xCloseable.is() ) + if ( xDocument.is() ) { try { - xCloseable->close( true ); + xDocument->close( true ); } catch( const uno::Exception& ) { @@ -549,12 +543,11 @@ uno::Reference< util::XCloseable > OCommonEmbeddedObject::LoadDocumentFromStorag } catch( const uno::Exception& ) { - uno::Reference< util::XCloseable > xCloseable( xDocument, uno::UNO_QUERY ); - if ( xCloseable.is() ) + if ( xDocument.is() ) { try { - xCloseable->close( true ); + xDocument->close( true ); } catch( const uno::Exception& ) { @@ -834,12 +827,11 @@ uno::Reference< util::XCloseable > OCommonEmbeddedObject::CreateDocFromMediaDesc } catch( const uno::Exception& ) { - uno::Reference< util::XCloseable > xCloseable( xDocument, uno::UNO_QUERY ); - if ( xCloseable.is() ) + if ( xDocument.is() ) { try { - xCloseable->close( true ); + xDocument->close( true ); } catch( const uno::Exception& ) { @@ -1456,10 +1448,7 @@ void SAL_CALL OCommonEmbeddedObject::saveCompleted( sal_Bool bUseNew ) else { try { - uno::Reference< lang::XComponent > xComponent( m_xNewObjectStorage, uno::UNO_QUERY ); - SAL_WARN_IF( !xComponent.is(), "embeddedobj.common", "Wrong storage implementation!" ); - if ( xComponent.is() ) - xComponent->dispose(); + m_xNewObjectStorage->dispose(); } catch ( const uno::Exception& ) { @@ -1740,10 +1729,8 @@ void SAL_CALL OCommonEmbeddedObject::reload( { // close own storage try { - uno::Reference< lang::XComponent > xComponent( m_xObjectStorage, uno::UNO_QUERY ); - OSL_ENSURE( !m_xObjectStorage.is() || xComponent.is(), "Wrong storage implementation!" ); - if ( xComponent.is() ) - xComponent->dispose(); + if ( m_xObjectStorage.is() ) + m_xObjectStorage->dispose(); } catch ( const uno::Exception& ) { @@ -1756,11 +1743,10 @@ void SAL_CALL OCommonEmbeddedObject::reload( sal_Bool SAL_CALL OCommonEmbeddedObject::isStored() { - uno::Reference xNA(m_xObjectStorage, uno::UNO_QUERY); - if (!xNA.is()) + if (!m_xObjectStorage.is()) return false; - return xNA->getElementNames().hasElements(); + return m_xObjectStorage->getElementNames().hasElements(); } diff --git a/embeddedobj/source/commonembedding/xfactory.cxx b/embeddedobj/source/commonembedding/xfactory.cxx index ce36832027ba..856335181a98 100644 --- a/embeddedobj/source/commonembedding/xfactory.cxx +++ b/embeddedobj/source/commonembedding/xfactory.cxx @@ -100,9 +100,8 @@ uno::Reference< uno::XInterface > SAL_CALL OOoEmbeddedObjectFactory::createInsta } try { - uno::Reference< lang::XComponent > xComp( xSubStorage, uno::UNO_QUERY ); - if ( xComp.is() ) - xComp->dispose(); + if ( xSubStorage.is() ) + xSubStorage->dispose(); } catch ( const uno::Exception& ) { diff --git a/embeddedobj/source/general/docholder.cxx b/embeddedobj/source/general/docholder.cxx index f7b1044fff12..b48ffdfe5c64 100644 --- a/embeddedobj/source/general/docholder.cxx +++ b/embeddedobj/source/general/docholder.cxx @@ -229,14 +229,12 @@ void DocumentHolder::CloseFrame() catch( const uno::Exception& ) { } else { - uno::Reference xComp( m_xFrame,uno::UNO_QUERY ); - if( xComp.is() ) - xComp->dispose(); + if( m_xFrame.is() ) + m_xFrame->dispose(); } - uno::Reference< lang::XComponent > xComp( m_xHatchWindow, uno::UNO_QUERY ); - if ( xComp.is() ) - xComp->dispose(); + if ( m_xHatchWindow.is() ) + m_xHatchWindow->dispose(); m_xHatchWindow.clear(); m_xOwnWindow.clear(); @@ -272,8 +270,7 @@ void DocumentHolder::FreeOffice() void DocumentHolder::CloseDocument( bool bDeliverOwnership, bool bWaitForClose ) { - uno::Reference< util::XCloseBroadcaster > xBroadcaster( m_xComponent, uno::UNO_QUERY ); - if ( xBroadcaster.is() ) + if ( m_xComponent.is() ) { uno::Reference< document::XEventBroadcaster > xEventBroadcaster( m_xComponent, uno::UNO_QUERY ); if ( xEventBroadcaster.is() ) @@ -287,13 +284,9 @@ void DocumentHolder::CloseDocument( bool bDeliverOwnership, bool bWaitForClose ) xModifyBroadcaster->removeModifyListener( static_cast(this) ); } - uno::Reference< util::XCloseable > xCloseable( xBroadcaster, uno::UNO_QUERY ); - if ( xCloseable.is() ) - { - m_bAllowClosing = true; - m_bWaitForClose = bWaitForClose; - xCloseable->close( bDeliverOwnership ); - } + m_bAllowClosing = true; + m_bWaitForClose = bWaitForClose; + m_xComponent->close( bDeliverOwnership ); } m_xComponent = nullptr; @@ -718,7 +711,7 @@ bool DocumentHolder::ShowUI( const uno::Reference< css::frame::XLayoutManager >& // by unlocking the LM each layout change will now resize the containers window; pending layouts will be processed now xOwnLM->setVisible( true ); - uno::Reference< frame::XFramesSupplier > xSupp( m_xFrame->getCreator(), uno::UNO_QUERY ); + uno::Reference< frame::XFramesSupplier > xSupp = m_xFrame->getCreator(); if ( xSupp.is() ) xSupp->setActiveFrame( m_xFrame ); @@ -737,7 +730,7 @@ bool DocumentHolder::ShowUI( const uno::Reference< css::frame::XLayoutManager >& // activation failed; reestablish old state try { - uno::Reference< frame::XFramesSupplier > xSupp( m_xFrame->getCreator(), uno::UNO_QUERY ); + uno::Reference< frame::XFramesSupplier > xSupp = m_xFrame->getCreator(); if ( xSupp.is() ) xSupp->setActiveFrame( nullptr ); @@ -787,7 +780,7 @@ bool DocumentHolder::HideUI( const uno::Reference< css::frame::XLayoutManager >& if ( xOwnLM.is() ) { try { - uno::Reference< frame::XFramesSupplier > xSupp( m_xFrame->getCreator(), uno::UNO_QUERY ); + uno::Reference< frame::XFramesSupplier > xSupp = m_xFrame->getCreator(); if ( xSupp.is() ) xSupp->setActiveFrame( nullptr ); @@ -932,9 +925,8 @@ void DocumentHolder::SetComponent( const uno::Reference< util::XCloseable >& xDo m_bReadOnly = bReadOnly; m_bAllowClosing = false; - uno::Reference< util::XCloseBroadcaster > xBroadcaster( m_xComponent, uno::UNO_QUERY ); - if ( xBroadcaster.is() ) - xBroadcaster->addCloseListener( static_cast(this) ); + if ( m_xComponent.is() ) + m_xComponent->addCloseListener( static_cast(this) ); uno::Reference< document::XEventBroadcaster > xEventBroadcaster( m_xComponent, uno::UNO_QUERY ); if ( xEventBroadcaster.is() ) @@ -1277,7 +1269,7 @@ void SAL_CALL DocumentHolder::activated( ) } else { - uno::Reference< frame::XFramesSupplier > xSupp( m_xFrame->getCreator(), uno::UNO_QUERY ); + uno::Reference< frame::XFramesSupplier > xSupp = m_xFrame->getCreator(); if ( xSupp.is() ) xSupp->setActiveFrame( m_xFrame ); } diff --git a/embeddedobj/source/general/xcreator.cxx b/embeddedobj/source/general/xcreator.cxx index 54d8476d5471..522cc07d7942 100644 --- a/embeddedobj/source/general/xcreator.cxx +++ b/embeddedobj/source/general/xcreator.cxx @@ -138,9 +138,8 @@ uno::Reference< uno::XInterface > SAL_CALL UNOEmbeddedObjectCreator::createInsta } try { - uno::Reference< lang::XComponent > xComp( xSubStorage, uno::UNO_QUERY ); - if ( xComp.is() ) - xComp->dispose(); + if ( xSubStorage.is() ) + xSubStorage->dispose(); } catch ( const uno::Exception& ) { diff --git a/embeddedobj/source/msole/oleembed.cxx b/embeddedobj/source/msole/oleembed.cxx index 6dd539bd7a8e..5cf159dfdf17 100644 --- a/embeddedobj/source/msole/oleembed.cxx +++ b/embeddedobj/source/msole/oleembed.cxx @@ -129,15 +129,14 @@ void OleEmbeddedObject::MoveListeners() m_pInterfaceContainer->getContainer( cppu::UnoType::get()); if ( pStateChangeContainer != nullptr ) { - uno::Reference< embed::XStateChangeBroadcaster > xWrappedObject( m_xWrappedObject, uno::UNO_QUERY ); - if ( xWrappedObject.is() ) + if ( m_xWrappedObject.is() ) { ::cppu::OInterfaceIteratorHelper pIterator( *pStateChangeContainer ); while ( pIterator.hasMoreElements() ) { try { - xWrappedObject->addStateChangeListener( static_cast(pIterator.next()) ); + m_xWrappedObject->addStateChangeListener( static_cast(pIterator.next()) ); } catch( const uno::RuntimeException& ) { @@ -154,15 +153,14 @@ void OleEmbeddedObject::MoveListeners() m_pInterfaceContainer->getContainer( cppu::UnoType::get()); if ( pEventContainer != nullptr ) { - uno::Reference< document::XEventBroadcaster > xWrappedObject( m_xWrappedObject, uno::UNO_QUERY ); - if ( xWrappedObject.is() ) + if ( m_xWrappedObject.is() ) { ::cppu::OInterfaceIteratorHelper pIterator( *pEventContainer ); while ( pIterator.hasMoreElements() ) { try { - xWrappedObject->addEventListener( static_cast(pIterator.next()) ); + m_xWrappedObject->addEventListener( static_cast(pIterator.next()) ); } catch( const uno::RuntimeException& ) { @@ -179,15 +177,14 @@ void OleEmbeddedObject::MoveListeners() m_pInterfaceContainer->getContainer( cppu::UnoType::get()); if ( pCloseContainer != nullptr ) { - uno::Reference< util::XCloseBroadcaster > xWrappedObject( m_xWrappedObject, uno::UNO_QUERY ); - if ( xWrappedObject.is() ) + if ( m_xWrappedObject.is() ) { ::cppu::OInterfaceIteratorHelper pIterator( *pCloseContainer ); while ( pIterator.hasMoreElements() ) { try { - xWrappedObject->addCloseListener( static_cast(pIterator.next()) ); + m_xWrappedObject->addCloseListener( static_cast(pIterator.next()) ); } catch( const uno::RuntimeException& ) { diff --git a/embeddedobj/source/msole/olemisc.cxx b/embeddedobj/source/msole/olemisc.cxx index 9a22ec9982cb..66572c40be4d 100644 --- a/embeddedobj/source/msole/olemisc.cxx +++ b/embeddedobj/source/msole/olemisc.cxx @@ -392,11 +392,10 @@ uno::Reference< util::XCloseable > SAL_CALL OleEmbeddedObject::getComponent() void SAL_CALL OleEmbeddedObject::addStateChangeListener( const uno::Reference< embed::XStateChangeListener >& xListener ) { // begin wrapping related part ==================== - uno::Reference< embed::XStateChangeBroadcaster > xWrappedObject( m_xWrappedObject, uno::UNO_QUERY ); - if ( xWrappedObject.is() ) + if ( m_xWrappedObject.is() ) { // the object was converted to OOo embedded object, the current implementation is now only a wrapper - xWrappedObject->addStateChangeListener( xListener ); + m_xWrappedObject->addStateChangeListener( xListener ); return; } // end wrapping related part ==================== @@ -417,11 +416,10 @@ void SAL_CALL OleEmbeddedObject::removeStateChangeListener( const uno::Reference< embed::XStateChangeListener >& xListener ) { // begin wrapping related part ==================== - uno::Reference< embed::XStateChangeBroadcaster > xWrappedObject( m_xWrappedObject, uno::UNO_QUERY ); - if ( xWrappedObject.is() ) + if ( m_xWrappedObject.is() ) { // the object was converted to OOo embedded object, the current implementation is now only a wrapper - xWrappedObject->removeStateChangeListener( xListener ); + m_xWrappedObject->removeStateChangeListener( xListener ); return; } // end wrapping related part ==================== -- cgit