Definition at line 30 of file XrdProofdSandbox.h.
 
|  | 
|  | XrdProofdSandbox (XrdProofUI ui, bool full, bool changeown) | 
|  | Assert existence on the sandbox for the user defined by 'ui'.  More... 
 | 
|  | 
| int | AddSession (const char *tag) | 
|  | Record entry for new proofserv session tagged 'tag' in the active sessions file (<SandBox>/.sessions).  More... 
 | 
|  | 
| const char * | Dir () const | 
|  | 
| const char * | ErrMsg () const | 
|  | 
| int | GetSessionDirs (int opt, std::list< XrdOucString * > *sdirs, XrdOucString *tag=0) | 
|  | Scan the sandbox for sessions working dirs and return their sorted (according to creation time, first is the newest) list in 'sdirs'.  More... 
 | 
|  | 
| int | GuessTag (XrdOucString &tag, int ridx=1) | 
|  | Guess session tag completing 'tag' (typically "-<pid>") by scanning the active session file or the session dir.  More... 
 | 
|  | 
| bool | IsValid () const | 
|  | 
| int | RemoveSession (const char *tag) | 
|  | Move record for tag from the active sessions file to the old sessions file (<SandBox>/.sessions).  More... 
 | 
|  | 
| int | TrimSessionDirs () | 
|  | If the static fgMaxOldLogs > 0, logs for a fgMaxOldLogs number of sessions are kept in the sandbox; working dirs for sessions in excess are removed.  More... 
 | 
|  | 
#include <XrdProofdSandbox.h>
◆ XrdProofdSandbox()
      
        
          | XrdProofdSandbox::XrdProofdSandbox | ( | XrdProofUI | ui, | 
        
          |  |  | bool | full, | 
        
          |  |  | bool | changeown | 
        
          |  | ) |  |  | 
      
 
Assert existence on the sandbox for the user defined by 'ui'. 
The sandbox is created under fgWorkdir or $HOME/proof; the boolean 'full' controls the set of directories to be asserted: the sub-set {cache, packages, .creds} is always asserted; if full is true also the sub-dirs {queries, datasets} are asserted. If 'changeown' is true the sandbox ownership is set to 'ui'; this requires su-privileges. The constructor also builds the list of sessions directories in the sandbox; directories corresponding to terminated sessions are removed if the total number of session directories is larger than fgMaxOldSessions . 
Definition at line 47 of file XrdProofdSandbox.cxx.
 
 
◆ AddSession()
      
        
          | int XrdProofdSandbox::AddSession | ( | const char * | tag | ) |  | 
      
 
Record entry for new proofserv session tagged 'tag' in the active sessions file (<SandBox>/.sessions). 
The file is created if needed. Return 0 on success, -1 on error. 
Definition at line 324 of file XrdProofdSandbox.cxx.
 
 
◆ Dir()
  
  | 
        
          | const char * XrdProofdSandbox::Dir | ( |  | ) | const |  | inline | 
 
 
◆ ErrMsg()
  
  | 
        
          | const char * XrdProofdSandbox::ErrMsg | ( |  | ) | const |  | inline | 
 
 
◆ GetSessionDirs()
      
        
          | int XrdProofdSandbox::GetSessionDirs | ( | int | opt, | 
        
          |  |  | std::list< XrdOucString * > * | sdirs, | 
        
          |  |  | XrdOucString * | tag = 0 | 
        
          |  | ) |  |  | 
      
 
Scan the sandbox for sessions working dirs and return their sorted (according to creation time, first is the newest) list in 'sdirs'. 
The option 'opt' may have 3 values: 0 all working dirs are kept 1 active sessions only 2 terminated sessions only 3 search entry containing 'tag' and fill tag with the full entry name; if defined, sdirs is filled Returns -1 otherwise in case of failure. In case of success returns 0 for opt < 3, 1 if found or 0 if not found for opt == 3. 
Definition at line 252 of file XrdProofdSandbox.cxx.
 
 
◆ GuessTag()
      
        
          | int XrdProofdSandbox::GuessTag | ( | XrdOucString & | tag, | 
        
          |  |  | int | ridx = 1 | 
        
          |  | ) |  |  | 
      
 
Guess session tag completing 'tag' (typically "-<pid>") by scanning the active session file or the session dir. 
In case of success, tag is filled with the full tag and 0 is returned. In case of failure, -1 is returned. 
Definition at line 401 of file XrdProofdSandbox.cxx.
 
 
◆ IsValid()
  
  | 
        
          | bool XrdProofdSandbox::IsValid | ( |  | ) | const |  | inline | 
 
 
◆ RemoveSession()
      
        
          | int XrdProofdSandbox::RemoveSession | ( | const char * | tag | ) |  | 
      
 
Move record for tag from the active sessions file to the old sessions file (<SandBox>/.sessions). 
The active file is removed if empty after the operation. The old sessions file is created if needed. Return 0 on success, -1 on error. 
Definition at line 508 of file XrdProofdSandbox.cxx.
 
 
◆ SetMaxOldSessions()
  
  | 
        
          | static void XrdProofdSandbox::SetMaxOldSessions | ( | int | mxses | ) |  |  | inlinestatic | 
 
 
◆ SetWorkdir()
  
  | 
        
          | static void XrdProofdSandbox::SetWorkdir | ( | const char * | wdir | ) |  |  | inlinestatic | 
 
 
◆ TrimSessionDirs()
      
        
          | int XrdProofdSandbox::TrimSessionDirs | ( |  | ) |  | 
      
 
If the static fgMaxOldLogs > 0, logs for a fgMaxOldLogs number of sessions are kept in the sandbox; working dirs for sessions in excess are removed. 
By default logs for the last 10 sessions are kept; the limit can be changed via the static method XrdProofdClient::SetMaxOldLogs. Return 0 on success, -1 on error. 
Definition at line 617 of file XrdProofdSandbox.cxx.
 
 
◆ fChangeOwn
  
  | 
        
          | bool XrdProofdSandbox::fChangeOwn |  | private | 
 
 
◆ fDir
  
  | 
        
          | XrdOucString XrdProofdSandbox::fDir |  | private | 
 
 
◆ fErrMsg
  
  | 
        
          | XrdOucString XrdProofdSandbox::fErrMsg |  | private | 
 
 
◆ fgMaxOldSessions
  
  | 
        
          | int XrdProofdSandbox::fgMaxOldSessions = 10 |  | staticprivate | 
 
 
◆ fgUI
◆ fgWorkdir
  
  | 
        
          | XrdOucString XrdProofdSandbox::fgWorkdir = "" |  | staticprivate | 
 
 
◆ fUI
◆ fValid
  
  | 
        
          | bool XrdProofdSandbox::fValid |  | private | 
 
 
The documentation for this class was generated from the following files: