XRootD
XrdOssStats::Directory Class Reference

#include <XrdOssStatsDirectory.hh>

+ Inheritance diagram for XrdOssStats::Directory:
+ Collaboration diagram for XrdOssStats::Directory:

Public Member Functions

 Directory (std::unique_ptr< XrdOssDF > ossDF, XrdSysError &log, FileSystem &oss)
 
virtual ~Directory ()
 
virtual int Opendir (const char *path, XrdOucEnv &env) override
 
int Readdir (char *buff, int blen) override
 
- Public Member Functions inherited from XrdOssWrapDF
 XrdOssWrapDF (XrdOssDF &df2Wrap)
 
virtual ~XrdOssWrapDF ()
 
virtual int Close (long long *retsz=0)
 
uint16_t DFType ()
 
virtual int Fchmod (mode_t mode)
 
virtual int Fctl (int cmd, int alen, const char *args, char **resp=0)
 
virtual void Flush ()
 Flush filesystem cached pages for this file (used for checksums). More...
 
virtual int Fstat (struct stat *buf)
 
virtual int Fsync ()
 
virtual int Fsync (XrdSfsAio *aiop)
 
virtual int Ftruncate (unsigned long long flen)
 
virtual int getFD ()
 
virtual off_t getMmap (void **addr)
 
virtual const char * getTID ()
 
virtual int isCompressed (char *cxidp=0)
 
virtual int Open (const char *path, int Oflag, mode_t Mode, XrdOucEnv &env)
 
virtual ssize_t pgRead (void *buffer, off_t offset, size_t rdlen, uint32_t *csvec, uint64_t opts)
 
virtual int pgRead (XrdSfsAio *aioparm, uint64_t opts)
 
virtual ssize_t pgWrite (void *buffer, off_t offset, size_t wrlen, uint32_t *csvec, uint64_t opts)
 
virtual int pgWrite (XrdSfsAio *aioparm, uint64_t opts)
 
virtual ssize_t Read (off_t offset, size_t size)
 
virtual ssize_t Read (void *buffer, off_t offset, size_t size)
 
virtual int Read (XrdSfsAio *aiop)
 
virtual ssize_t ReadRaw (void *buffer, off_t offset, size_t size)
 
virtual ssize_t ReadV (XrdOucIOVec *readV, int rdvcnt)
 
virtual int StatRet (struct stat *Stat)
 
virtual ssize_t Write (const void *buffer, off_t offset, size_t size)
 
virtual int Write (XrdSfsAio *aiop)
 
virtual ssize_t WriteV (XrdOucIOVec *writeV, int wrvcnt)
 
- Public Member Functions inherited from XrdOssDF
 XrdOssDF (const char *tid="", uint16_t dftype=0, int fdnum=-1)
 
virtual ~XrdOssDF ()
 
uint16_t DFType ()
 

Additional Inherited Members

- Static Public Attributes inherited from XrdOssDF
static const uint16_t DF_isDir = 0x0001
 Object is for a directory. More...
 
static const uint16_t DF_isFile = 0x0002
 Object is for a file. More...
 
static const uint16_t DF_isProxy = 0x0010
 Object is a proxy object. More...
 
static const uint64_t doCalc = 0x4000000000000000ULL
 pgw: Calculate checksums More...
 
static const int Fctl_ckpObj = 0
 
static const int Fctl_utimes = 1
 
static const uint64_t Verify = 0x8000000000000000ULL
 all: Verify checksums More...
 
- Protected Attributes inherited from XrdOssWrapDF
XrdOssDFwrapDF
 
- Protected Attributes inherited from XrdOssDF
uint16_t dfType
 
int fd
 
off_t pgwEOF
 
short rsvd
 
const char * tident
 

Detailed Description

Definition at line 14 of file XrdOssStatsDirectory.hh.

Constructor & Destructor Documentation

◆ Directory()

XrdOssStats::Directory::Directory ( std::unique_ptr< XrdOssDF ossDF,
XrdSysError log,
FileSystem oss 
)
inline

Definition at line 16 of file XrdOssStatsDirectory.hh.

16  :
17  XrdOssWrapDF(*ossDF),
18  m_wrappedDir(std::move(ossDF)),
19  m_log(log),
20  m_oss(oss)
21  {
22  }
XrdOssWrapDF(XrdOssDF &df2Wrap)

◆ ~Directory()

virtual XrdOssStats::Directory::~Directory ( )
inlinevirtual

Definition at line 24 of file XrdOssStatsDirectory.hh.

24 {}

Member Function Documentation

◆ Opendir()

virtual int XrdOssStats::Directory::Opendir ( const char *  path,
XrdOucEnv env 
)
inlineoverridevirtual

Open a directory.

Parameters
path- Pointer to the path of the directory to be opened.
env- Reference to environmental information.
Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 27 of file XrdOssStatsDirectory.hh.

29  {
30  FileSystem::OpTimer op(m_oss.m_ops.m_dirlist_ops, m_oss.m_slow_ops.m_dirlist_ops, m_oss.m_times.m_dirlist, m_oss.m_slow_times.m_dirlist, m_oss.m_slow_duration);
31  return wrapDF.Opendir(path, env);
32  }
virtual int Opendir(const char *path, XrdOucEnv &env)
Definition: XrdOss.hh:79
XrdOssDF & wrapDF

References XrdOssDF::Opendir(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Readdir()

int XrdOssStats::Directory::Readdir ( char *  buff,
int  blen 
)
inlineoverridevirtual

Get the next directory entry.

Parameters
buff- Pointer to buffer where a null terminated string of the entry name is to be returned. If no more entries exist, a null string is returned.
blen- Length of the buffer.
Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 34 of file XrdOssStatsDirectory.hh.

35  {
36  FileSystem::OpTimer op(m_oss.m_ops.m_dirlist_entries, m_oss.m_slow_ops.m_dirlist_entries, m_oss.m_times.m_dirlist, m_oss.m_slow_times.m_dirlist, m_oss.m_slow_duration);
37  return wrapDF.Readdir(buff, blen);
38  }
virtual int Readdir(char *buff, int blen)
Definition: XrdOss.hh:92

References XrdOssDF::Readdir(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

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