Definition at line 38 of file XrdProofdNetMgr.h.
Public Member Functions | |
XrdProofdNetMgr (XrdProofdManager *mgr, XrdProtocol_Config *pi, XrdSysError *e) | |
Constructor. More... | |
virtual | ~XrdProofdNetMgr () |
Destructor. More... | |
void | BalanceNodesOrder () |
Indices (this will be used twice). More... | |
int | Broadcast (int type, const char *msg, const char *usr=0, XrdProofdResponse *r=0, bool notify=0, int subtype=-1) |
Broadcast request to known potential sub-nodes. More... | |
int | BroadcastCtrlC (const char *usr) |
Broadcast a ctrlc interrupt Return 0 on success, -1 on error. More... | |
int | Config (bool rcf=0) |
Run configuration and parse the entered config directives. More... | |
int | DoDirective (XrdProofdDirective *d, char *val, XrdOucStream *cfg, bool rcf) |
Update the priorities of the active sessions. More... | |
void | Dump () |
Dump status. More... | |
std::list< XrdProofWorker * > * | GetActiveWorkers () |
Return the list of workers after having made sure that the info is up-to-date. More... | |
std::list< XrdProofWorker * > * | GetNodes () |
Return the list of unique nodes after having made sure that the info is up-to-date. More... | |
XrdProofConn * | GetProofConn (const char *url) |
Get a XrdProofConn for url; create a new one if not available. More... | |
bool | IsLocal (const char *host, bool checkport=0) |
Check if 'host' is this local host. More... | |
const char * | PROOFcfg () const |
int | ReadBuffer (XrdProofdProtocol *p) |
Process a readbuf request. More... | |
char * | ReadBufferLocal (const char *file, const char *pat, int &len, int opt) |
Grep lines matching 'pat' form 'path'; the returned buffer (length in 'len') must be freed by the caller. More... | |
char * | ReadBufferLocal (const char *file, kXR_int64 ofs, int &len) |
Read a buffer of length 'len' at offset 'ofs' of local file 'path'; the returned buffer must be freed by the caller. More... | |
char * | ReadBufferRemote (const char *url, const char *file, kXR_int64 ofs, int &len, int grep) |
Send a read buffer request of length 'len' at offset 'ofs' for remote file defined by 'url'; the returned buffer must be freed by the caller. More... | |
char * | ReadLogPaths (const char *stag, int isess) |
Get log paths from next tier; used in multi-master setups Returns 0 in case of error. More... | |
char * | ReadLogPaths (const char *url, const char *stag, int isess) |
Get log paths from next tier; used in multi-master setups Returns 0 in case of error. More... | |
void | RegisterDirectives () |
Register config directives. More... | |
XrdClientMessage * | Send (const char *url, int type, const char *msg, int srvtype, XrdProofdResponse *r, bool notify=0, int subtype=-1) |
Broadcast request to known potential sub-nodes. More... | |
bool | WorkerUsrCfg () const |
Public Member Functions inherited from XrdProofdConfig | |
XrdProofdConfig (const char *cfg=0, XrdSysError *edest=0) | |
Main constructor. More... | |
virtual | ~XrdProofdConfig () |
const char * | CfgFile () const |
virtual int | Config (bool rcf=0) |
virtual int | DoDirective (XrdProofdDirective *, char *, XrdOucStream *, bool) |
virtual void | RegisterDirectives () |
void | SetCfgEDest (const char *cfg, XrdSysError *edest) |
Set config file and error handler. More... | |
Private Member Functions | |
void | CreateDefaultPROOFcfg () |
Fill-in fWorkers for a localhost based on the number of workers fNumLocalWrks. More... | |
int | DoDirectiveAdminReqTO (char *, XrdOucStream *, bool) |
Process 'adminreqto' directive. More... | |
int | DoDirectiveResource (char *, XrdOucStream *, bool) |
Process 'resource' directive. More... | |
int | DoDirectiveWorker (char *, XrdOucStream *, bool) |
Process 'worker' directive. More... | |
int | FindUniqueNodes () |
Scan fWorkers for unique nodes (stored in fNodes). More... | |
int | LocateLocalFile (XrdOucString &file) |
Locate the exact file path allowing for wildcards '*' in the file name. More... | |
int | ReadPROOFcfg (bool reset=1) |
Read PROOF config file and load the information in fWorkers. More... | |
Private Attributes | |
bool | fDfltFallback |
std::list< XrdProofWorker * > | fDfltWorkers |
XrdProofdManager * | fMgr |
XrdSysRecMutex | fMutex |
std::list< XrdProofWorker * > | fNodes |
int | fNumLocalWrks |
XrdProofdFile | fPROOFcfg |
XrdOucHash< XrdProofConn > | fProofConnHash |
std::list< XrdProofWorker * > | fRegWorkers |
bool | fReloadPROOFcfg |
int | fRequestTO |
int | fResourceType |
std::list< XrdProofWorker * > | fWorkers |
bool | fWorkerUsrCfg |
Additional Inherited Members | |
Protected Member Functions inherited from XrdProofdConfig | |
int | ParseFile (bool rcf=false) |
Parse config file for the registered directives. More... | |
bool | ReadFile (bool update=true) |
Return true if the file has never been read or did change since last reading, false otherwise. More... | |
void | Register (const char *dname, XrdProofdDirective *d) |
Protected Attributes inherited from XrdProofdConfig | |
XrdSysError * | fEDest |
#include <XrdProofdNetMgr.h>
XrdProofdNetMgr::XrdProofdNetMgr | ( | XrdProofdManager * | mgr, |
XrdProtocol_Config * | pi, | ||
XrdSysError * | e | ||
) |
Constructor.
Definition at line 67 of file XrdProofdNetMgr.cxx.
|
virtual |
Destructor.
Definition at line 103 of file XrdProofdNetMgr.cxx.
void XrdProofdNetMgr::BalanceNodesOrder | ( | ) |
Indices (this will be used twice).
Definition at line 232 of file XrdProofdNetMgr.cxx.
int XrdProofdNetMgr::Broadcast | ( | int | type, |
const char * | msg, | ||
const char * | usr = 0 , |
||
XrdProofdResponse * | r = 0 , |
||
bool | notify = 0 , |
||
int | subtype = -1 |
||
) |
Broadcast request to known potential sub-nodes.
Return 0 on success, -1 on error
Definition at line 552 of file XrdProofdNetMgr.cxx.
int XrdProofdNetMgr::BroadcastCtrlC | ( | const char * | usr | ) |
Broadcast a ctrlc interrupt Return 0 on success, -1 on error.
Definition at line 486 of file XrdProofdNetMgr.cxx.
|
virtual |
Run configuration and parse the entered config directives.
Return 0 on success, -1 on error
Reimplemented from XrdProofdConfig.
Definition at line 124 of file XrdProofdNetMgr.cxx.
|
private |
Fill-in fWorkers for a localhost based on the number of workers fNumLocalWrks.
Definition at line 1357 of file XrdProofdNetMgr.cxx.
|
virtual |
Update the priorities of the active sessions.
Reimplemented from XrdProofdConfig.
Definition at line 207 of file XrdProofdNetMgr.cxx.
|
private |
Process 'adminreqto' directive.
Definition at line 345 of file XrdProofdNetMgr.cxx.
|
private |
Process 'resource' directive.
Definition at line 366 of file XrdProofdNetMgr.cxx.
|
private |
Process 'worker' directive.
Definition at line 414 of file XrdProofdNetMgr.cxx.
void XrdProofdNetMgr::Dump | ( | ) |
Dump status.
Definition at line 1435 of file XrdProofdNetMgr.cxx.
|
private |
Scan fWorkers for unique nodes (stored in fNodes).
Return the number of unque nodes. NB: 'master' information here is ignored, because it is passed via the 'xpd.workdir' and 'xpd.image' config directives
Definition at line 1648 of file XrdProofdNetMgr.cxx.
std::list< XrdProofWorker * > * XrdProofdNetMgr::GetActiveWorkers | ( | ) |
Return the list of workers after having made sure that the info is up-to-date.
Definition at line 1406 of file XrdProofdNetMgr.cxx.
std::list< XrdProofWorker * > * XrdProofdNetMgr::GetNodes | ( | ) |
Return the list of unique nodes after having made sure that the info is up-to-date.
Definition at line 1459 of file XrdProofdNetMgr.cxx.
XrdProofConn * XrdProofdNetMgr::GetProofConn | ( | const char * | url | ) |
Get a XrdProofConn for url; create a new one if not available.
Definition at line 609 of file XrdProofdNetMgr.cxx.
bool XrdProofdNetMgr::IsLocal | ( | const char * | host, |
bool | checkport = 0 |
||
) |
Check if 'host' is this local host.
If checkport is true, matching of the local port with the one implied by host is also checked. Return 1 if 'local', 0 otherwise
Definition at line 738 of file XrdProofdNetMgr.cxx.
|
private |
Locate the exact file path allowing for wildcards '*' in the file name.
In case of success, returns 0 and fills file wity the first matching instance. Return -1 if no matching pat is found.
Definition at line 901 of file XrdProofdNetMgr.cxx.
|
inline |
Definition at line 80 of file XrdProofdNetMgr.h.
int XrdProofdNetMgr::ReadBuffer | ( | XrdProofdProtocol * | p | ) |
Process a readbuf request.
Definition at line 771 of file XrdProofdNetMgr.cxx.
char * XrdProofdNetMgr::ReadBufferLocal | ( | const char * | path, |
const char * | pat, | ||
int & | len, | ||
int | opt | ||
) |
Grep lines matching 'pat' form 'path'; the returned buffer (length in 'len') must be freed by the caller.
Wild cards '*' are allowed in the file name of 'path'; the first matching instance is taken. Returns 0 in case of error.
Definition at line 1059 of file XrdProofdNetMgr.cxx.
char * XrdProofdNetMgr::ReadBufferLocal | ( | const char * | path, |
kXR_int64 | ofs, | ||
int & | len | ||
) |
Read a buffer of length 'len' at offset 'ofs' of local file 'path'; the returned buffer must be freed by the caller.
Wild cards '*' are allowed in the file name of 'path'; the first matching instance is taken. Returns 0 in case of error.
Definition at line 956 of file XrdProofdNetMgr.cxx.
char * XrdProofdNetMgr::ReadBufferRemote | ( | const char * | url, |
const char * | file, | ||
kXR_int64 | ofs, | ||
int & | len, | ||
int | grep | ||
) |
Send a read buffer request of length 'len' at offset 'ofs' for remote file defined by 'url'; the returned buffer must be freed by the caller.
Returns 0 in case of error.
Definition at line 1180 of file XrdProofdNetMgr.cxx.
char * XrdProofdNetMgr::ReadLogPaths | ( | const char * | stag, |
int | isess | ||
) |
Get log paths from next tier; used in multi-master setups Returns 0 in case of error.
Definition at line 1304 of file XrdProofdNetMgr.cxx.
char * XrdProofdNetMgr::ReadLogPaths | ( | const char * | url, |
const char * | stag, | ||
int | isess | ||
) |
Get log paths from next tier; used in multi-master setups Returns 0 in case of error.
Definition at line 1246 of file XrdProofdNetMgr.cxx.
|
private |
Read PROOF config file and load the information in fWorkers.
NB: 'master' information here is ignored, because it is passed via the 'xpd.workdir' and 'xpd.image' config directives
Definition at line 1488 of file XrdProofdNetMgr.cxx.
|
virtual |
Register config directives.
Reimplemented from XrdProofdConfig.
Definition at line 92 of file XrdProofdNetMgr.cxx.
XrdClientMessage * XrdProofdNetMgr::Send | ( | const char * | url, |
int | type, | ||
const char * | msg, | ||
int | srvtype, | ||
XrdProofdResponse * | r, | ||
bool | notify = 0 , |
||
int | subtype = -1 |
||
) |
Broadcast request to known potential sub-nodes.
Return 0 on success, -1 on error
Definition at line 633 of file XrdProofdNetMgr.cxx.
|
inline |
Definition at line 81 of file XrdProofdNetMgr.h.
|
private |
Definition at line 50 of file XrdProofdNetMgr.h.
|
private |
Definition at line 54 of file XrdProofdNetMgr.h.
|
private |
Definition at line 44 of file XrdProofdNetMgr.h.
|
private |
Definition at line 42 of file XrdProofdNetMgr.h.
|
private |
Definition at line 57 of file XrdProofdNetMgr.h.
|
private |
Definition at line 46 of file XrdProofdNetMgr.h.
|
private |
Definition at line 48 of file XrdProofdNetMgr.h.
|
private |
Definition at line 45 of file XrdProofdNetMgr.h.
|
private |
Definition at line 55 of file XrdProofdNetMgr.h.
|
private |
Definition at line 49 of file XrdProofdNetMgr.h.
|
private |
Definition at line 52 of file XrdProofdNetMgr.h.
|
private |
Definition at line 47 of file XrdProofdNetMgr.h.
|
private |
Definition at line 56 of file XrdProofdNetMgr.h.
|
private |
Definition at line 51 of file XrdProofdNetMgr.h.