XRootD
Loading...
Searching...
No Matches
OverrideINIReader Class Reference
+ Inheritance diagram for OverrideINIReader:
+ Collaboration diagram for OverrideINIReader:

Public Member Functions

 OverrideINIReader ()
 
 OverrideINIReader (FILE *file)
 
 OverrideINIReader (std::string filename)
 

Static Protected Member Functions

static int ValueHandler (void *user, const char *section, const char *name, const char *value)
 

Detailed Description

Definition at line 314 of file XrdSciTokensAccess.cc.

Constructor & Destructor Documentation

◆ OverrideINIReader() [1/3]

OverrideINIReader::OverrideINIReader ( )
inline

Definition at line 316 of file XrdSciTokensAccess.cc.

316{};

◆ OverrideINIReader() [2/3]

OverrideINIReader::OverrideINIReader ( std::string filename)
inline

Definition at line 317 of file XrdSciTokensAccess.cc.

317 {
318 _error = ini_parse(filename.c_str(), ValueHandler, this);
319 }
static int ValueHandler(void *user, const char *section, const char *name, const char *value)

References ValueHandler().

+ Here is the call graph for this function:

◆ OverrideINIReader() [3/3]

OverrideINIReader::OverrideINIReader ( FILE * file)
inline

Definition at line 320 of file XrdSciTokensAccess.cc.

320 {
321 _error = ini_parse_file(file, ValueHandler, this);
322 }

References ValueHandler().

+ Here is the call graph for this function:

Member Function Documentation

◆ ValueHandler()

static int OverrideINIReader::ValueHandler ( void * user,
const char * section,
const char * name,
const char * value )
inlinestaticprotected

Override the ValueHandler function in order override previous values For example: [Issuer https://chtc.cs.wisc.edu/icecube] issuer = https://chtc.cs.wisc.edu/icecube base_path = /icecube/path1

[Issuer https://chtc.cs.wisc.edu/icecube] issuer = https://chtc.cs.wisc.edu/icecube base_path = /icecube/path2

Will result in a configuration with base_path set to /icecube/path2

Definition at line 337 of file XrdSciTokensAccess.cc.

338 {
339 OverrideINIReader* reader = (OverrideINIReader*)user;
340 std::string key = MakeKey(section, name);
341
342 // Overwrite existing values, if they exist
343 reader->_values[key] = value;
344 reader->_sections.insert(section);
345 return 1;
346 }

Referenced by OverrideINIReader(), and OverrideINIReader().

+ Here is the caller graph for this function:

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