xrootd
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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 (int &retc, long long *retsz=0, char *buff=0, int blen=0)
 
int Retire (XrdOfsHanCB *, int DSec)
 
XrdOssDFSelect (void)
 
void Suppress (int rrc=-EDOM, int wrc=-EDOM)
 
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
 
XrdOfsHanPsc * Posc
 

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
 
static XrdOfsHandleFree
 

Friends

class XrdOfsHanTab
 
class XrdOfsHanXpr
 

Constructor & Destructor Documentation

XrdOfsHandle::XrdOfsHandle ( )
inline
XrdOfsHandle::~XrdOfsHandle ( )
inline

References Retire().

Member Function Documentation

void XrdOfsHandle::Activate ( XrdOssDF ssP)
inline

References ssi.

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

References ossDF, and ssi.

void XrdOfsHandle::Lock ( )
inline

References hMutex, and XrdSysMutex::Lock().

const char* XrdOfsHandle::Name ( )
inline

References Path, and XrdOfsHanKey::Val.

Referenced by XrdOfsFile::FName().

int XrdOfsHandle::PoscGet ( short &  Mode,
int  Done = 0 
)
int XrdOfsHandle::PoscSet ( const char *  User,
int  Unum,
short  Mode 
)
const char* XrdOfsHandle::PoscUsr ( )
int XrdOfsHandle::Retire ( int &  retc,
long long *  retsz = 0,
char *  buff = 0,
int  blen = 0 
)

Referenced by ~XrdOfsHandle().

int XrdOfsHandle::Retire ( XrdOfsHanCB ,
int  DSec 
)
XrdOssDF& XrdOfsHandle::Select ( void  )
inline

References ssi.

static int XrdOfsHandle::StartXpr ( int  Init = 0)
static
void XrdOfsHandle::Suppress ( int  rrc = -EDOM,
int  wrc = -EDOM 
)
void XrdOfsHandle::UnLock ( )
inline

References hMutex, and XrdSysMutex::UnLock().

int XrdOfsHandle::Usage ( )
inline

References XrdOfsHanKey::Links, and Path.

int XrdOfsHandle::WaitLock ( void  )
private

Friends And Related Function Documentation

friend class XrdOfsHanTab
friend
friend class XrdOfsHanXpr
friend

Member Data Documentation

XrdOfsHandle* XrdOfsHandle::Free
staticprivate
XrdSysMutex XrdOfsHandle::hMutex
private

Referenced by Lock(), and UnLock().

char XrdOfsHandle::isChanged
char XrdOfsHandle::isCompressed
char XrdOfsHandle::isPending
char XrdOfsHandle::isRW
const int XrdOfsHandle::LockTries = 3
staticprivate
const int XrdOfsHandle::LockWait = 333
staticprivate
XrdSysMutex XrdOfsHandle::myMutex
staticprivate
XrdOfsHandle* XrdOfsHandle::Next
private
const int XrdOfsHandle::nolokDelay = 3
staticprivate
const int XrdOfsHandle::nomemDelay = 15
staticprivate
const int XrdOfsHandle::opPC = 3
static
const int XrdOfsHandle::opRW = 1
static
XrdOssDF* XrdOfsHandle::ossDF
staticprivate

Referenced by Inactive().

XrdOfsHanKey XrdOfsHandle::Path
private

Referenced by Name(), and Usage().

XrdOfsHanPsc* XrdOfsHandle::Posc
private
XrdOfsHanTab XrdOfsHandle::roTable
staticprivate
XrdOfsHanTab XrdOfsHandle::rwTable
staticprivate
XrdOssDF* XrdOfsHandle::ssi
private

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


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