LibreOffice Module ucb (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
http_dav_ucp::SerfLockStore Class Reference

#include <SerfLockStore.hxx>

Collaboration diagram for http_dav_ucp::SerfLockStore:
[legend]

Public Member Functions

 SerfLockStore ()
 
 ~SerfLockStore ()
 
OUString const * getLockTokenForURI (OUString const &rURI, css::ucb::Lock const *pLock)
 
void addLock (const OUString &rURI, css::ucb::Lock const &rLock, const OUString &sToken, rtl::Reference< CurlSession > const &xSession, sal_Int32 nLastChanceToSendRefreshRequest)
 
void removeLock (const OUString &rURI)
 
void refreshLocks ()
 

Private Member Functions

void removeLockImpl (std::unique_lock< std::mutex > &rGuard, const OUString &rURI)
 
void startTicker ()
 
void stopTicker (std::unique_lock< std::mutex > &rGuard)
 

Private Attributes

std::mutex m_aMutex
 
rtl::Reference< TickerThreadm_pTickerThread
 
LockInfoMap m_aLockInfoMap
 

Detailed Description

Definition at line 60 of file SerfLockStore.hxx.

Constructor & Destructor Documentation

◆ SerfLockStore()

SerfLockStore::SerfLockStore ( )

Definition at line 83 of file SerfLockStore.cxx.

◆ ~SerfLockStore()

SerfLockStore::~SerfLockStore ( )

Definition at line 88 of file SerfLockStore.cxx.

References m_aLockInfoMap, m_aMutex, SAL_WARN_IF, and stopTicker().

Member Function Documentation

◆ addLock()

void SerfLockStore::addLock ( const OUString &  rURI,
css::ucb::Lock const &  rLock,
const OUString &  sToken,
rtl::Reference< CurlSession > const &  xSession,
sal_Int32  nLastChanceToSendRefreshRequest 
)

Definition at line 171 of file SerfLockStore.cxx.

References m_aLockInfoMap, m_aMutex, and startTicker().

◆ getLockTokenForURI()

OUString const * SerfLockStore::getLockTokenForURI ( OUString const &  rURI,
css::ucb::Lock const *  pLock 
)

Definition at line 137 of file SerfLockStore.cxx.

References m_aLockInfoMap, and m_aMutex.

◆ refreshLocks()

void SerfLockStore::refreshLocks ( )

◆ removeLock()

void SerfLockStore::removeLock ( const OUString &  rURI)

Definition at line 189 of file SerfLockStore.cxx.

References m_aMutex, and removeLockImpl().

◆ removeLockImpl()

void SerfLockStore::removeLockImpl ( std::unique_lock< std::mutex > &  rGuard,
const OUString &  rURI 
)
private

Definition at line 196 of file SerfLockStore.cxx.

References m_aLockInfoMap, and stopTicker().

Referenced by refreshLocks(), and removeLock().

◆ startTicker()

void SerfLockStore::startTicker ( )
private

Definition at line 104 of file SerfLockStore.cxx.

References m_aMutex, and m_pTickerThread.

Referenced by addLock().

◆ stopTicker()

void SerfLockStore::stopTicker ( std::unique_lock< std::mutex > &  rGuard)
private

Definition at line 116 of file SerfLockStore.cxx.

References m_pTickerThread.

Referenced by removeLockImpl(), and ~SerfLockStore().

Member Data Documentation

◆ m_aLockInfoMap

LockInfoMap http_dav_ucp::SerfLockStore::m_aLockInfoMap
private

◆ m_aMutex

std::mutex http_dav_ucp::SerfLockStore::m_aMutex
private

◆ m_pTickerThread

rtl::Reference< TickerThread > http_dav_ucp::SerfLockStore::m_pTickerThread
private

Definition at line 63 of file SerfLockStore.hxx.

Referenced by startTicker(), and stopTicker().


The documentation for this class was generated from the following files: