xrootd
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
XrdOfsHandle Class Reference

#include <XrdOfsHandle.hh>

Collaboration diagram for XrdOfsHandle:
Collaboration graph
[legend]

Public Member Functions

void Activate (XrdOssDF *ssP)
 
int Inactive ()
 
const char * Name ()
 
int PoscGet (short &Mode, int Done=0)
 
int PoscSet (const char *User, int Unum, short Mode)
 
const char * PoscUsr ()
 
int Retire (long long *retsz=0, char *buff=0, int blen=0)
 
int Retire (XrdOfsHanCB *, int DSec)
 
XrdOssDFSelect (void)
 
int Usage ()
 
void Lock ()
 
void UnLock ()
 
 XrdOfsHandle ()
 
 ~XrdOfsHandle ()
 

Static Public Member Functions

static int Alloc (const char *thePath, int Opts, XrdOfsHandle **Handle)
 
static int Alloc (XrdOfsHandle **Handle)
 
static void Hide (const char *thePath)
 
static int StartXpr (int Init=0)
 

Public Attributes

char isPending
 
char isChanged
 
char isCompressed
 
char isRW
 

Static Public Attributes

static const int opRW = 1
 
static const int opPC = 3
 

Private Member Functions

int WaitLock (void)
 

Static Private Member Functions

static int Alloc (XrdOfsHanKey, int Opts, XrdOfsHandle **Handle)
 

Private Attributes

XrdSysMutex hMutex
 
XrdOssDFssi
 
XrdOfsHandleNext
 
XrdOfsHanKey Path
 
XrdOfsHanPscPosc
 

Static Private Attributes

static const int LockTries = 3
 
static const int LockWait = 333
 
static const int nolokDelay = 3
 
static const int nomemDelay = 15
 
static XrdSysMutex myMutex
 
static XrdOfsHanTab roTable
 
static XrdOfsHanTab rwTable
 
static XrdOssDFossDF = (XrdOssDF *)new XrdOfsHanOss
 
static XrdOfsHandleFree = 0
 

Friends

class XrdOfsHanTab
 
class XrdOfsHanXpr
 

Constructor & Destructor Documentation

XrdOfsHandle::XrdOfsHandle ( )
inline

Referenced by Alloc().

XrdOfsHandle::~XrdOfsHandle ( )
inline

References Retire().

Member Function Documentation

void XrdOfsHandle::Activate ( XrdOssDF ssP)
inline

References ssi.

int XrdOfsHandle::Alloc ( const char *  thePath,
int  Opts,
XrdOfsHandle **  Handle 
)
static
int XrdOfsHandle::Alloc ( XrdOfsHandle **  Handle)
static
int XrdOfsHandle::Alloc ( XrdOfsHanKey  theKey,
int  Opts,
XrdOfsHandle **  Handle 
)
staticprivate
void XrdOfsHandle::Hide ( const char *  thePath)
static
int XrdOfsHandle::Inactive ( )
inline

References ossDF, and ssi.

Referenced by XrdOfsFile::close().

void XrdOfsHandle::Lock ( )
inline
const char* XrdOfsHandle::Name ( )
inline
int XrdOfsHandle::PoscGet ( short &  Mode,
int  Done = 0 
)
int XrdOfsHandle::PoscSet ( const char *  User,
int  Unum,
short  Mode 
)
const char * XrdOfsHandle::PoscUsr ( )

References Posc, and XrdOfsHanPsc::User.

Referenced by XrdOfs::Unpersist().

int XrdOfsHandle::Retire ( long long *  retsz = 0,
char *  buff = 0,
int  blen = 0 
)
int XrdOfsHandle::Retire ( XrdOfsHanCB cbP,
int  DSec 
)
XrdOssDF& XrdOfsHandle::Select ( void  )
inline
int XrdOfsHandle::StartXpr ( int  Init = 0)
static
void XrdOfsHandle::UnLock ( )
inline
int XrdOfsHandle::Usage ( )
inline

References XrdOfsHanKey::Links, and Path.

Referenced by XrdOfsFile::close(), and XrdOfsFile::open().

int XrdOfsHandle::WaitLock ( void  )
private

Friends And Related Function Documentation

friend class XrdOfsHanTab
friend
friend class XrdOfsHanXpr
friend

Referenced by Retire().

Member Data Documentation

XrdOfsHandle * XrdOfsHandle::Free = 0
staticprivate

Referenced by Alloc(), and Retire().

XrdSysMutex XrdOfsHandle::hMutex
private

Referenced by Lock(), UnLock(), and WaitLock().

char XrdOfsHandle::isChanged
char XrdOfsHandle::isCompressed
char XrdOfsHandle::isPending
char XrdOfsHandle::isRW
const int XrdOfsHandle::LockTries = 3
staticprivate

Referenced by WaitLock().

const int XrdOfsHandle::LockWait = 333
staticprivate

Referenced by WaitLock().

XrdSysMutex XrdOfsHandle::myMutex
staticprivate

Referenced by Alloc(), Hide(), PoscGet(), Retire(), and StartXpr().

XrdOfsHandle* XrdOfsHandle::Next
private
const int XrdOfsHandle::nolokDelay = 3
staticprivate

Referenced by Alloc().

const int XrdOfsHandle::nomemDelay = 15
staticprivate

Referenced by Alloc().

const int XrdOfsHandle::opPC = 3
static
const int XrdOfsHandle::opRW = 1
static

Referenced by Alloc(), and XrdOfsFile::open().

XrdOssDF * XrdOfsHandle::ossDF = (XrdOssDF *)new XrdOfsHanOss
staticprivate

Referenced by Alloc(), Inactive(), and Retire().

XrdOfsHanKey XrdOfsHandle::Path
private
XrdOfsHanPsc* XrdOfsHandle::Posc
private
XrdOfsHanTab XrdOfsHandle::roTable
staticprivate

Referenced by Alloc(), Hide(), and Retire().

XrdOfsHanTab XrdOfsHandle::rwTable
staticprivate

Referenced by Alloc(), Hide(), and Retire().

XrdOssDF* XrdOfsHandle::ssi
private

Referenced by Activate(), Alloc(), Inactive(), Retire(), and Select().


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