#include <XrdCmsXmiReq.hh>
Inheritance diagram for XrdCmsXmiReq:
Public Types | |
enum | ReqType |
Public Member Functions | |
int | Chmod (XrdCmsReq *Request, mode_t mode, const char *path, const char *opaque) |
int | Mkdir (XrdCmsReq *Request, mode_t mode, const char *path, const char *opaque) |
int | Mkpath (XrdCmsReq *Request, mode_t mode, const char *path, const char *opaque) |
int | Prep (const char *ReqID, int opts, const char *path, const char *opaque) |
int | Rename (XrdCmsReq *Request, const char *oldpath, const char *oldopaque, const char *newpath, const char *newopaque) |
int | Remdir (XrdCmsReq *Request, const char *path, const char *opaque) |
int | Remove (XrdCmsReq *Request, const char *path, const char *opaque) |
int | Select (XrdCmsReq *Request, int opts, const char *path, const char *opaque) |
int | Stat (XrdCmsReq *Request, const char *path, const char *opaque) |
XrdCmsXmiReq (XrdCmsXmi *xp) | |
XrdCmsXmiReq (XrdCmsReq *reqp, ReqType rqtype, int parms, const char *path, const char *opaque, const char *path2=0, const char *opaque2=0) | |
virtual | ~XrdCmsXmiReq () |
Static Public Member Functions | |
static void | processPrpQ () |
static void | processReqQ () |
static void | processStgQ () |
Private Member Functions | |
void | Start () |
int | Qit (XrdCmsReq *rp, ReqType, int parms, const char *path, const char *opaque, const char *path2=0, const char *opaque2=0) |
Private Attributes | |
XrdCmsXmiReq * | Next |
XrdCmsReq * | ReqP |
int | Parms |
ReqType | Rtype |
char * | Path |
char * | Opaque |
char * | Path2 |
char * | Opaque2 |
Static Private Attributes | |
static XrdCmsXmi * | XmiP |
static XrdSysMutex | prpMutex |
static XrdSysSemaphore | prpReady |
static XrdCmsXmiReq * | prpFirst |
static XrdCmsXmiReq * | prpLast |
static XrdSysMutex | reqMutex |
static XrdSysSemaphore | reqReady |
static XrdCmsXmiReq * | reqFirst |
static XrdCmsXmiReq * | reqLast |
static XrdSysMutex | stgMutex |
static XrdSysSemaphore | stgReady |
static XrdCmsXmiReq * | stgFirst |
static XrdCmsXmiReq * | stgLast |
Definition at line 19 of file XrdCmsXmiReq.hh.
Definition at line 23 of file XrdCmsXmiReq.hh.
XrdCmsXmiReq::XrdCmsXmiReq | ( | XrdCmsXmi * | xp | ) |
XrdCmsXmiReq::XrdCmsXmiReq | ( | XrdCmsReq * | reqp, | |
ReqType | rqtype, | |||
int | parms, | |||
const char * | path, | |||
const char * | opaque, | |||
const char * | path2 = 0 , |
|||
const char * | opaque2 = 0 | |||
) |
Definition at line 85 of file XrdCmsXmiReq.cc.
References do_prep, do_stage, XrdSysMutex::Lock(), Next, Opaque, Opaque2, Parms, Path, Path2, XrdSysSemaphore::Post(), prpFirst, prpLast, prpMutex, prpReady, reqFirst, reqLast, reqMutex, ReqP, reqReady, Rtype, stgFirst, stgLast, stgMutex, stgReady, and XrdSysMutex::UnLock().
XrdCmsXmiReq::~XrdCmsXmiReq | ( | ) | [virtual] |
int XrdCmsXmiReq::Chmod | ( | XrdCmsReq * | Request, | |
mode_t | mode, | |||
const char * | path, | |||
const char * | opaque | |||
) | [inline, virtual] |
int XrdCmsXmiReq::Mkdir | ( | XrdCmsReq * | Request, | |
mode_t | mode, | |||
const char * | path, | |||
const char * | opaque | |||
) | [inline, virtual] |
int XrdCmsXmiReq::Mkpath | ( | XrdCmsReq * | Request, | |
mode_t | mode, | |||
const char * | path, | |||
const char * | opaque | |||
) | [inline, virtual] |
int XrdCmsXmiReq::Prep | ( | const char * | ReqID, | |
int | opts, | |||
const char * | path, | |||
const char * | opaque | |||
) | [inline, virtual] |
int XrdCmsXmiReq::Rename | ( | XrdCmsReq * | Request, | |
const char * | oldpath, | |||
const char * | oldopaque, | |||
const char * | newpath, | |||
const char * | newopaque | |||
) | [inline, virtual] |
int XrdCmsXmiReq::Remdir | ( | XrdCmsReq * | Request, | |
const char * | path, | |||
const char * | opaque | |||
) | [inline, virtual] |
int XrdCmsXmiReq::Remove | ( | XrdCmsReq * | Request, | |
const char * | path, | |||
const char * | opaque | |||
) | [inline, virtual] |
int XrdCmsXmiReq::Select | ( | XrdCmsReq * | Request, | |
int | opts, | |||
const char * | path, | |||
const char * | opaque | |||
) | [inline, virtual] |
int XrdCmsXmiReq::Stat | ( | XrdCmsReq * | Request, | |
const char * | path, | |||
const char * | opaque | |||
) | [inline, virtual] |
void XrdCmsXmiReq::processPrpQ | ( | ) | [static] |
Definition at line 137 of file XrdCmsXmiReq.cc.
References XrdSysMutex::Lock(), Next, Opaque, Parms, Path, Path2, XrdCmsXmi::Prep(), prpFirst, prpLast, prpMutex, prpReady, XrdSysMutex::UnLock(), XrdSysSemaphore::Wait(), and XmiP.
Referenced by XrdCmsXmi_StartPrpQ().
void XrdCmsXmiReq::processReqQ | ( | ) | [static] |
Definition at line 166 of file XrdCmsXmiReq.cc.
References XrdCmsXmi::Chmod(), do_chmod, do_mkdir, do_mkpath, do_mv, do_rm, do_rmdir, do_stat, XrdSysError::Emsg(), XrdSysMutex::Lock(), XrdCmsXmi::Mkdir(), XrdCmsXmi::Mkpath(), Next, Opaque, Opaque2, Parms, Path, Path2, XrdCmsXmi::Remdir(), XrdCmsXmi::Remove(), XrdCmsXmi::Rename(), XrdCmsReq::Reply_Error(), reqFirst, reqLast, reqMutex, ReqP, reqReady, Rtype, XrdFrm::Say(), XrdCmsXmi::Stat(), XrdSysMutex::UnLock(), XrdSysSemaphore::Wait(), and XmiP.
Referenced by XrdCmsXmi_StartReqQ().
void XrdCmsXmiReq::processStgQ | ( | ) | [static] |
Definition at line 220 of file XrdCmsXmiReq.cc.
References XrdSysMutex::Lock(), Next, Opaque, Parms, Path, XrdCmsReq::Reply_Error(), ReqP, XrdCmsXmi::Select(), stgFirst, stgLast, stgMutex, stgReady, XrdSysMutex::UnLock(), XrdSysSemaphore::Wait(), and XmiP.
Referenced by XrdCmsXmi_StartStgQ().
void XrdCmsXmiReq::Start | ( | ) | [private] |
Definition at line 249 of file XrdCmsXmiReq.cc.
References XrdSysError::Emsg(), XrdSysThread::Run(), XrdFrm::Say(), XrdCmsXmi_StartPrpQ(), XrdCmsXmi_StartReqQ(), XrdCmsXmi_StartStgQ(), and XRDSYSTHREAD_BIND.
Referenced by XrdCmsXmiReq().
int XrdCmsXmiReq::Qit | ( | XrdCmsReq * | rp, | |
ReqType | , | |||
int | parms, | |||
const char * | path, | |||
const char * | opaque, | |||
const char * | path2 = 0 , |
|||
const char * | opaque2 = 0 | |||
) | [private] |
Definition at line 277 of file XrdCmsXmiReq.cc.
References XrdCmsReq::Reply_WaitResp(), and XrdCmsXmiReq().
Referenced by Chmod(), Mkdir(), Mkpath(), Prep(), Remdir(), Remove(), Rename(), Select(), and Stat().
XrdCmsXmi * XrdCmsXmiReq::XmiP [static, private] |
Definition at line 99 of file XrdCmsXmiReq.hh.
Referenced by processPrpQ(), processReqQ(), processStgQ(), and XrdCmsXmiReq().
XrdSysMutex XrdCmsXmiReq::prpMutex [static, private] |
XrdSysSemaphore XrdCmsXmiReq::prpReady [static, private] |
XrdCmsXmiReq * XrdCmsXmiReq::prpFirst [static, private] |
XrdCmsXmiReq * XrdCmsXmiReq::prpLast [static, private] |
XrdSysMutex XrdCmsXmiReq::reqMutex [static, private] |
XrdSysSemaphore XrdCmsXmiReq::reqReady [static, private] |
XrdCmsXmiReq * XrdCmsXmiReq::reqFirst [static, private] |
XrdCmsXmiReq * XrdCmsXmiReq::reqLast [static, private] |
XrdSysMutex XrdCmsXmiReq::stgMutex [static, private] |
XrdSysSemaphore XrdCmsXmiReq::stgReady [static, private] |
XrdCmsXmiReq * XrdCmsXmiReq::stgFirst [static, private] |
XrdCmsXmiReq * XrdCmsXmiReq::stgLast [static, private] |
XrdCmsXmiReq* XrdCmsXmiReq::Next [private] |
Definition at line 112 of file XrdCmsXmiReq.hh.
Referenced by processPrpQ(), processReqQ(), processStgQ(), and XrdCmsXmiReq().
XrdCmsReq* XrdCmsXmiReq::ReqP [private] |
Definition at line 113 of file XrdCmsXmiReq.hh.
Referenced by processReqQ(), processStgQ(), XrdCmsXmiReq(), and ~XrdCmsXmiReq().
int XrdCmsXmiReq::Parms [private] |
Definition at line 114 of file XrdCmsXmiReq.hh.
Referenced by processPrpQ(), processReqQ(), processStgQ(), and XrdCmsXmiReq().
ReqType XrdCmsXmiReq::Rtype [private] |
char* XrdCmsXmiReq::Path [private] |
Definition at line 116 of file XrdCmsXmiReq.hh.
Referenced by processPrpQ(), processReqQ(), processStgQ(), XrdCmsXmiReq(), and ~XrdCmsXmiReq().
char* XrdCmsXmiReq::Opaque [private] |
Definition at line 117 of file XrdCmsXmiReq.hh.
Referenced by processPrpQ(), processReqQ(), processStgQ(), XrdCmsXmiReq(), and ~XrdCmsXmiReq().
char* XrdCmsXmiReq::Path2 [private] |
Definition at line 118 of file XrdCmsXmiReq.hh.
Referenced by processPrpQ(), processReqQ(), XrdCmsXmiReq(), and ~XrdCmsXmiReq().
char* XrdCmsXmiReq::Opaque2 [private] |
Definition at line 119 of file XrdCmsXmiReq.hh.
Referenced by processReqQ(), XrdCmsXmiReq(), and ~XrdCmsXmiReq().