summaryrefslogtreecommitdiff
path: root/ucb
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2023-02-13 14:32:29 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2023-02-13 20:05:33 +0000
commit45d9d71c3acdde55743bc8c08fc36d44a5bdd5b4 (patch)
tree4891eed1b288ad5c481a10d6b0f70d06cffa8a3d /ucb
parentaf63914153074b127fe3bc7aa90bebe5fbee23d6 (diff)
osl::Mutex->std::mutex in DynamicResultSetWrapper
Change-Id: I218460fac22e65f583a545d41720b0301b67c502 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146937 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'ucb')
-rw-r--r--ucb/source/cacher/cacheddynamicresultset.cxx4
-rw-r--r--ucb/source/cacher/cacheddynamicresultsetstub.cxx4
-rw-r--r--ucb/source/cacher/dynamicresultsetwrapper.cxx57
-rw-r--r--ucb/source/cacher/dynamicresultsetwrapper.hxx7
4 files changed, 33 insertions, 39 deletions
diff --git a/ucb/source/cacher/cacheddynamicresultset.cxx b/ucb/source/cacher/cacheddynamicresultset.cxx
index b3464b66bdcb..acb00ef6799f 100644
--- a/ucb/source/cacher/cacheddynamicresultset.cxx
+++ b/ucb/source/cacher/cacheddynamicresultset.cxx
@@ -55,7 +55,7 @@ void CachedDynamicResultSet
Reference< XResultSet > xCache(
new CachedContentResultSet( m_xContext, m_xSourceResultOne, m_xContentIdentifierMapping ) );
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
m_xMyResultOne = xCache;
}
@@ -69,7 +69,7 @@ void CachedDynamicResultSet
Reference< XResultSet > xCache(
new CachedContentResultSet( m_xContext, m_xSourceResultTwo, m_xContentIdentifierMapping ) );
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
m_xMyResultTwo = xCache;
}
diff --git a/ucb/source/cacher/cacheddynamicresultsetstub.cxx b/ucb/source/cacher/cacheddynamicresultsetstub.cxx
index dacc037ef228..8d46b6d8236b 100644
--- a/ucb/source/cacher/cacheddynamicresultsetstub.cxx
+++ b/ucb/source/cacher/cacheddynamicresultsetstub.cxx
@@ -56,7 +56,7 @@ void CachedDynamicResultSetStub
Reference< XResultSet > xStub(
new CachedContentResultSetStub( m_xSourceResultOne ) );
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
m_xMyResultOne = xStub;
}
@@ -70,7 +70,7 @@ void CachedDynamicResultSetStub
Reference< XResultSet > xStub(
new CachedContentResultSetStub( m_xSourceResultTwo ) );
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
m_xMyResultTwo = xStub;
}
diff --git a/ucb/source/cacher/dynamicresultsetwrapper.cxx b/ucb/source/cacher/dynamicresultsetwrapper.cxx
index cf2b4fd9c3dd..8ad5b53f3055 100644
--- a/ucb/source/cacher/dynamicresultsetwrapper.cxx
+++ b/ucb/source/cacher/dynamicresultsetwrapper.cxx
@@ -61,7 +61,7 @@ void DynamicResultSetWrapper::impl_init()
Reference< XDynamicResultSet > xSource;
{
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
xSource = m_xSource;
m_xSource = nullptr;
}
@@ -83,7 +83,7 @@ void DynamicResultSetWrapper::impl_deinit()
void DynamicResultSetWrapper::impl_EnsureNotDisposed()
{
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
if( m_bDisposed )
throw DisposedException();
}
@@ -91,7 +91,7 @@ void DynamicResultSetWrapper::impl_EnsureNotDisposed()
//virtual
void DynamicResultSetWrapper::impl_InitResultSetOne( const Reference< XResultSet >& xResultSet )
{
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
OSL_ENSURE( !m_xSourceResultOne.is(), "Source ResultSet One is set already" );
m_xSourceResultOne = xResultSet;
m_xMyResultOne = xResultSet;
@@ -100,7 +100,7 @@ void DynamicResultSetWrapper::impl_InitResultSetOne( const Reference< XResultSet
//virtual
void DynamicResultSetWrapper::impl_InitResultSetTwo( const Reference< XResultSet >& xResultSet )
{
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
OSL_ENSURE( !m_xSourceResultTwo.is(), "Source ResultSet Two is set already" );
m_xSourceResultTwo = xResultSet;
m_xMyResultTwo = xResultSet;
@@ -125,23 +125,19 @@ void SAL_CALL DynamicResultSetWrapper::dispose()
{
impl_EnsureNotDisposed();
+ std::unique_lock aGuard( m_aMutex );
Reference< XComponent > xSourceComponent;
- {
- osl::ClearableGuard< osl::Mutex > aGuard( m_aMutex );
- if( m_bInDispose || m_bDisposed )
- return;
- m_bInDispose = true;
-
- xSourceComponent = m_xSource;
+ if( m_bInDispose || m_bDisposed )
+ return;
+ m_bInDispose = true;
- if( m_pDisposeEventListeners && m_pDisposeEventListeners->getLength() )
- {
- EventObject aEvt;
- aEvt.Source = static_cast< XComponent * >( this );
+ xSourceComponent = m_xSource;
- aGuard.clear();
- m_pDisposeEventListeners->disposeAndClear( aEvt );
- }
+ if( m_pDisposeEventListeners && m_pDisposeEventListeners->getLength(aGuard) )
+ {
+ EventObject aEvt;
+ aEvt.Source = static_cast< XComponent * >( this );
+ m_pDisposeEventListeners->disposeAndClear( aGuard, aEvt );
}
/* //@todo ?? ( only if java collection needs to long )
@@ -149,7 +145,6 @@ void SAL_CALL DynamicResultSetWrapper::dispose()
xSourceComponent->dispose();
*/
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
m_bDisposed = true;
m_bInDispose = false;
}
@@ -159,13 +154,13 @@ void SAL_CALL DynamicResultSetWrapper::dispose()
void SAL_CALL DynamicResultSetWrapper::addEventListener( const Reference< XEventListener >& Listener )
{
impl_EnsureNotDisposed();
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
if ( !m_pDisposeEventListeners )
m_pDisposeEventListeners.reset(
- new OInterfaceContainerHelper3<XEventListener>( m_aContainerMutex ) );
+ new OInterfaceContainerHelper4<XEventListener>() );
- m_pDisposeEventListeners->addInterface( Listener );
+ m_pDisposeEventListeners->addInterface( aGuard, Listener );
}
@@ -173,10 +168,10 @@ void SAL_CALL DynamicResultSetWrapper::addEventListener( const Reference< XEvent
void SAL_CALL DynamicResultSetWrapper::removeEventListener( const Reference< XEventListener >& Listener )
{
impl_EnsureNotDisposed();
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
if ( m_pDisposeEventListeners )
- m_pDisposeEventListeners->removeInterface( Listener );
+ m_pDisposeEventListeners->removeInterface( aGuard, Listener );
}
@@ -188,7 +183,7 @@ void DynamicResultSetWrapper::impl_disposing( const EventObject& )
{
impl_EnsureNotDisposed();
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
if( !m_xSource.is() )
return;
@@ -219,7 +214,7 @@ void DynamicResultSetWrapper::impl_notify( const ListEvent& Changes )
aNewEvent.Changes = Changes.Changes;
{
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
for( ListAction& rAction : asNonConstRange(aNewEvent.Changes) )
{
if (m_bGotWelcome)
@@ -274,7 +269,7 @@ void SAL_CALL DynamicResultSetWrapper::setSource( const Reference< XInterface >
{
impl_EnsureNotDisposed();
{
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
if( m_xSource.is() )
{
throw AlreadyInitializedException();
@@ -290,7 +285,7 @@ void SAL_CALL DynamicResultSetWrapper::setSource( const Reference< XInterface >
bool bStatic = false;
{
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
m_xSource = xSourceDynamic;
xListener = m_xListener;
bStatic = m_bStatic;
@@ -317,7 +312,7 @@ Reference< XResultSet > SAL_CALL DynamicResultSetWrapper::getStaticResultSet()
Reference< XDynamicResultSet > xSource;
Reference< XEventListener > xMyListenerImpl;
{
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
if( m_xListener.is() )
throw ListenerAlreadySetException();
@@ -347,7 +342,7 @@ void SAL_CALL DynamicResultSetWrapper::setListener( const Reference< XDynamicRes
Reference< XDynamicResultSet > xSource;
Reference< XDynamicResultSetListener > xMyListenerImpl;
{
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
if( m_xListener.is() )
throw ListenerAlreadySetException();
if( m_bStatic )
@@ -409,7 +404,7 @@ sal_Int16 SAL_CALL DynamicResultSetWrapper::getCapabilities()
m_aSourceSet.wait();
Reference< XDynamicResultSet > xSource;
{
- osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ std::unique_lock aGuard( m_aMutex );
xSource = m_xSource;
}
return xSource->getCapabilities();
diff --git a/ucb/source/cacher/dynamicresultsetwrapper.hxx b/ucb/source/cacher/dynamicresultsetwrapper.hxx
index 66aec8194145..66548a64b420 100644
--- a/ucb/source/cacher/dynamicresultsetwrapper.hxx
+++ b/ucb/source/cacher/dynamicresultsetwrapper.hxx
@@ -22,7 +22,7 @@
#include <mutex>
#include <osl/conditn.hxx>
#include <cppuhelper/weak.hxx>
-#include <comphelper/interfacecontainer3.hxx>
+#include <comphelper/interfacecontainer4.hxx>
#include <com/sun/star/ucb/XDynamicResultSet.hpp>
#include <com/sun/star/ucb/XSourceInitialization.hpp>
#include <com/sun/star/ucb/XDynamicResultSetListener.hpp>
@@ -41,8 +41,7 @@ private:
//management of listeners
bool m_bDisposed; ///Dispose call ready.
bool m_bInDispose;///In dispose call
- osl::Mutex m_aContainerMutex;
- std::unique_ptr<comphelper::OInterfaceContainerHelper3<css::lang::XEventListener>>
+ std::unique_ptr<comphelper::OInterfaceContainerHelper4<css::lang::XEventListener>>
m_pDisposeEventListeners;
protected:
rtl::Reference<DynamicResultSetWrapperListener>
@@ -51,7 +50,7 @@ protected:
css::uno::Reference< css::uno::XComponentContext >
m_xContext;
- osl::Mutex m_aMutex;
+ std::mutex m_aMutex;
bool m_bStatic;
bool m_bGotWelcome;