Kodi Documentation 18.0
Kodi is an open source media player and entertainment hub.
CNfsConnection Class Reference

#include <NFSFile.h>

Inheritance diagram for CNfsConnection:
CCriticalSection XbmcThreads::CountingLockable< XbmcThreads::CRecursiveMutex >

Classes

struct  contextTimeout
 
struct  keepAliveStruct
 

Public Types

typedef std::map< struct nfsfh *, struct keepAliveStructtFileKeepAliveMap
 
typedef std::map< std::string, struct contextTimeouttOpenContextMap
 

Public Member Functions

 CNfsConnection ()
 
 ~CNfsConnection ()
 
bool Connect (const CURL &url, std::string &relativePath)
 
struct nfs_context * GetNfsContext ()
 
uint64_t GetMaxReadChunkSize ()
 
uint64_t GetMaxWriteChunkSize ()
 
std::list< std::string > GetExportList (const CURL &url)
 
bool splitUrlIntoExportAndPath (const CURL &url, std::string &exportPath, std::string &relativePath, std::list< std::string > &exportList)
 
bool splitUrlIntoExportAndPath (const CURL &url, std::string &exportPath, std::string &relativePath)
 
int stat (const CURL &url, NFSSTAT *statbuff)
 
void AddActiveConnection ()
 
void AddIdleConnection ()
 
void CheckIfIdle ()
 
void Deinit ()
 
void resetKeepAlive (std::string _exportPath, struct nfsfh *_pFileHandle)
 
void removeFromKeepAliveList (struct nfsfh *_pFileHandle)
 
const std::string & GetConnectedIp () const
 
const std::string & GetConnectedExport () const
 
const std::string GetContextMapId () const
 
- Public Member Functions inherited from XbmcThreads::CountingLockable< XbmcThreads::CRecursiveMutex >
 CountingLockable ()=default
 
void lock ()
 
bool try_lock ()
 
void unlock ()
 
unsigned int exit (unsigned int leave=0)
 
void restore (unsigned int restoreCount)
 
XbmcThreads::CRecursiveMutex & get_underlying ()
 

Additional Inherited Members

- Protected Attributes inherited from XbmcThreads::CountingLockable< XbmcThreads::CRecursiveMutex >
XbmcThreads::CRecursiveMutex mutex
 
unsigned int count
 

Member Typedef Documentation

◆ tFileKeepAliveMap

typedef std::map<struct nfsfh *, struct keepAliveStruct> CNfsConnection::tFileKeepAliveMap

◆ tOpenContextMap

typedef std::map<std::string, struct contextTimeout> CNfsConnection::tOpenContextMap

Constructor & Destructor Documentation

◆ CNfsConnection()

CNfsConnection::CNfsConnection ( )

◆ ~CNfsConnection()

CNfsConnection::~CNfsConnection ( )

Member Function Documentation

◆ AddActiveConnection()

void CNfsConnection::AddActiveConnection ( )

◆ AddIdleConnection()

void CNfsConnection::AddIdleConnection ( )

◆ CheckIfIdle()

void CNfsConnection::CheckIfIdle ( )

◆ Connect()

bool CNfsConnection::Connect ( const CURL url,
std::string &  relativePath 
)

◆ Deinit()

void CNfsConnection::Deinit ( )

◆ GetConnectedExport()

const std::string & CNfsConnection::GetConnectedExport ( ) const
inline

◆ GetConnectedIp()

const std::string & CNfsConnection::GetConnectedIp ( ) const
inline

◆ GetContextMapId()

const std::string CNfsConnection::GetContextMapId ( ) const
inline

◆ GetExportList()

std::list< std::string > CNfsConnection::GetExportList ( const CURL url)

◆ GetMaxReadChunkSize()

uint64_t CNfsConnection::GetMaxReadChunkSize ( )
inline

◆ GetMaxWriteChunkSize()

uint64_t CNfsConnection::GetMaxWriteChunkSize ( )
inline

◆ GetNfsContext()

struct nfs_context * CNfsConnection::GetNfsContext ( )
inline

◆ removeFromKeepAliveList()

void CNfsConnection::removeFromKeepAliveList ( struct nfsfh *  _pFileHandle)

◆ resetKeepAlive()

void CNfsConnection::resetKeepAlive ( std::string  _exportPath,
struct nfsfh *  _pFileHandle 
)

◆ splitUrlIntoExportAndPath() [1/2]

bool CNfsConnection::splitUrlIntoExportAndPath ( const CURL url,
std::string &  exportPath,
std::string &  relativePath 
)

◆ splitUrlIntoExportAndPath() [2/2]

bool CNfsConnection::splitUrlIntoExportAndPath ( const CURL url,
std::string &  exportPath,
std::string &  relativePath,
std::list< std::string > &  exportList 
)

◆ stat()

int CNfsConnection::stat ( const CURL url,
NFSSTAT statbuff 
)

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