XRootD
Loading...
Searching...
No Matches
XrdOssCsiConfig Class Reference

#include <XrdOssCsiConfig.hh>

+ Collaboration diagram for XrdOssCsiConfig:

Public Member Functions

 XrdOssCsiConfig ()
 
 ~XrdOssCsiConfig ()
 
bool allowMissingTags () const
 
bool disableLooseWrite () const
 
bool disablePgExtend () const
 
bool fillFileHole () const
 
int Init (XrdSysError &, const char *, const char *, XrdOucEnv *)
 
std::string xrdtSpaceName () const
 

Public Attributes

TagPath tagParam_
 

Detailed Description

Definition at line 161 of file XrdOssCsiConfig.hh.

Constructor & Destructor Documentation

◆ XrdOssCsiConfig()

XrdOssCsiConfig::XrdOssCsiConfig ( )
inline

Definition at line 165 of file XrdOssCsiConfig.hh.

165: fillFileHole_(true), xrdtSpaceName_("public"), allowMissingTags_(true), disablePgExtend_(false), disableLooseWrite_(false) { }

◆ ~XrdOssCsiConfig()

XrdOssCsiConfig::~XrdOssCsiConfig ( )
inline

Definition at line 166 of file XrdOssCsiConfig.hh.

166{ }

Member Function Documentation

◆ allowMissingTags()

bool XrdOssCsiConfig::allowMissingTags ( ) const
inline

Definition at line 174 of file XrdOssCsiConfig.hh.

174{ return allowMissingTags_; }

◆ disableLooseWrite()

bool XrdOssCsiConfig::disableLooseWrite ( ) const
inline

Definition at line 178 of file XrdOssCsiConfig.hh.

178{ return disableLooseWrite_; }

◆ disablePgExtend()

bool XrdOssCsiConfig::disablePgExtend ( ) const
inline

Definition at line 176 of file XrdOssCsiConfig.hh.

176{ return disablePgExtend_; }

◆ fillFileHole()

bool XrdOssCsiConfig::fillFileHole ( ) const
inline

Definition at line 170 of file XrdOssCsiConfig.hh.

170{ return fillFileHole_; }

◆ Init()

int XrdOssCsiConfig::Init ( XrdSysError Eroute,
const char *  config_fn,
const char *  parms,
XrdOucEnv  
)

Definition at line 48 of file XrdOssCsiConfig.cc.

49{
50 int NoGo = XrdOssOK;
51 Eroute.Say("++++++ OssCsi plugin initialization started.");
52
53 std::stringstream ss(parms ? parms : "");
54 std::string item;
55
56 while(std::getline(ss, item, ' '))
57 {
58 std::string value;
59 const auto idx = item.find('=');
60 if (idx != std::string::npos)
61 {
62 value = item.substr(idx+1, std::string::npos);
63 item.erase(idx, std::string::npos);
64 }
65 if (item == "nofill")
66 {
67 fillFileHole_ = false;
68 }
69 else if (item == "space" && !value.empty())
70 {
71 xrdtSpaceName_ = value;
72 }
73 else if (item == "nomissing")
74 {
75 allowMissingTags_ = false;
76 }
77 else if (item == "prefix")
78 {
79 if (tagParam_.SetPrefix(Eroute, value)) NoGo = 1;
80 }
81 else if (item == "nopgextend")
82 {
83 disablePgExtend_ = true;
84 }
85 else if (item == "noloosewrites")
86 {
87 disableLooseWrite_ = true;
88 }
89 }
90
91 if (NoGo) return NoGo;
92
94 if (getenv("XRDDEBUG")) OssCsiTrace.What = TRACE_ALL;
95 if (readConfig(Eroute, config_fn)) return 1;
96
97 Eroute.Say(" compute file holes : ", fillFileHole_ ? "yes" : "no");
98 Eroute.Say(" space name : ", xrdtSpaceName_.c_str());
99 Eroute.Say(" allow files without CRCs: ", allowMissingTags_ ? "yes" : "no");
100 Eroute.Say(" pgWrite can extend : ", disablePgExtend_ ? "no" : "yes");
101 Eroute.Say(" loose writes : ", disableLooseWrite_ ? "no" : "yes");
102 Eroute.Say(" trace level : ", std::to_string((long long int)OssCsiTrace.What).c_str());
103 Eroute.Say(" prefix : ", tagParam_.prefix_.empty() ? "[empty]" : tagParam_.prefix_.c_str());
104
105 Eroute.Say("++++++ OssCsi plugin initialization completed.");
106
107
108 return XrdOssOK;
109}
XrdOucTrace OssCsiTrace
#define TRACE_Warn
#define XrdOssOK
Definition XrdOss.hh:50
#define TRACE_ALL
Definition XrdTrace.hh:35
std::string prefix_
int SetPrefix(XrdSysError &Eroute, const std::string &v)
void Say(const char *text1, const char *text2=0, const char *txt3=0, const char *text4=0, const char *text5=0, const char *txt6=0)

References OssCsiTrace, TagPath::prefix_, XrdSysError::Say(), TagPath::SetPrefix(), tagParam_, TRACE_ALL, TRACE_Warn, XrdOucTrace::What, and XrdOssOK.

Referenced by XrdOssCsi::Init().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ xrdtSpaceName()

std::string XrdOssCsiConfig::xrdtSpaceName ( ) const
inline

Definition at line 172 of file XrdOssCsiConfig.hh.

172{ return xrdtSpaceName_; }

Referenced by XrdOssCsi::tagOpenEnv().

+ Here is the caller graph for this function:

Member Data Documentation

◆ tagParam_


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