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 313 of file XrdSciTokensAccess.cc.

Constructor & Destructor Documentation

◆ OverrideINIReader() [1/3]

OverrideINIReader::OverrideINIReader ( )
inline

Definition at line 315 of file XrdSciTokensAccess.cc.

315{};

◆ OverrideINIReader() [2/3]

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

Definition at line 316 of file XrdSciTokensAccess.cc.

316 {
317 _error = ini_parse(filename.c_str(), ValueHandler, this);
318 }
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 319 of file XrdSciTokensAccess.cc.

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

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 336 of file XrdSciTokensAccess.cc.

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

Referenced by OverrideINIReader(), and OverrideINIReader().

+ Here is the caller graph for this function:

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