wsdlpull  1.23
Classes | Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
ConfigFile Class Reference

#include <ConfigFile.h>

Classes

struct  file_not_found
 
struct  key_not_found
 

Public Member Functions

 ConfigFile (string filename, bool isList=false, string delimiter="=", string comment="##", string sentry="EndConfigFile")
 
 ConfigFile ()
 
template<class T >
read (const string &key) const
 
template<class T >
read (const string &key, const T &value) const
 
template<class T >
bool readInto (T &var, const string &key) const
 
template<class T >
bool readInto (T &var, const string &key, const T &value) const
 
template<class T >
void add (string key, const T &value, bool store=false)
 
template<class T >
void add (const T &key, bool store=false)
 
void remove (const string &key)
 
template<class T >
void remove (const T &key)
 
bool keyExists (const string &key) const
 
template<class T >
bool keyExists (const T &key) const
 
string getDelimiter () const
 
string getComment () const
 
string getSentry () const
 
string setDelimiter (const string &s)
 
string setComment (const string &s)
 
void load (string filename, bool isList=false)
 
void save ()
 

Protected Types

typedef std::map< string, string >::iterator mapi
 
typedef std::map< string, string >::const_iterator mapci
 

Protected Member Functions

template<>
string string_as_T (const string &s)
 
template<>
bool string_as_T (const string &s)
 

Static Protected Member Functions

template<class T >
static string T_as_string (const T &t)
 
template<class T >
static T string_as_T (const string &s)
 
static void trim (string &s)
 

Protected Attributes

string myDelimiter
 
string myComment
 
string mySentry
 
std::map< string, string > myContents
 
std::string file
 
bool listmode
 

Friends

std::ostream & operator<< (std::ostream &os, const ConfigFile &cf)
 
std::istream & operator>> (std::istream &is, ConfigFile &cf)
 

Detailed Description

Definition at line 54 of file ConfigFile.h.

Member Typedef Documentation

typedef std::map<string,string>::iterator ConfigFile::mapi
protected

Definition at line 62 of file ConfigFile.h.

typedef std::map<string,string>::const_iterator ConfigFile::mapci
protected

Definition at line 63 of file ConfigFile.h.

Constructor & Destructor Documentation

ConfigFile::ConfigFile ( string  filename,
bool  isList = false,
string  delimiter = "=",
string  comment = "##",
string  sentry = "EndConfigFile" 
)

Definition at line 7 of file ConfigFile.cpp.

ConfigFile::ConfigFile ( )

Definition at line 21 of file ConfigFile.cpp.

Member Function Documentation

template<class T >
T ConfigFile::read ( const string &  key) const

Definition at line 184 of file ConfigFile.h.

template<class T >
T ConfigFile::read ( const string &  key,
const T &  value 
) const

Definition at line 194 of file ConfigFile.h.

template<class T >
bool ConfigFile::readInto ( T &  var,
const string &  key 
) const

Definition at line 205 of file ConfigFile.h.

Referenced by Schema::SchemaParser::parseSchemaTag().

template<class T >
bool ConfigFile::readInto ( T &  var,
const string &  key,
const T &  value 
) const

Definition at line 218 of file ConfigFile.h.

template<class T >
void ConfigFile::add ( string  key,
const T &  value,
bool  store = false 
)

Definition at line 234 of file ConfigFile.h.

References T_as_string(), and trim().

template<class T >
void ConfigFile::add ( const T &  key,
bool  store = false 
)

Definition at line 253 of file ConfigFile.h.

References keyExists(), T_as_string(), and trim().

void ConfigFile::remove ( const string &  key)

Definition at line 47 of file ConfigFile.cpp.

References myContents.

template<class T >
void ConfigFile::remove ( const T &  key)

Definition at line 270 of file ConfigFile.h.

References keyExists(), save(), T_as_string(), and trim().

bool ConfigFile::keyExists ( const string &  key) const

Definition at line 55 of file ConfigFile.cpp.

References myContents.

Referenced by add(), and remove().

template<class T >
bool ConfigFile::keyExists ( const T &  key) const

Definition at line 281 of file ConfigFile.h.

References T_as_string().

string ConfigFile::getDelimiter ( ) const
inline

Definition at line 95 of file ConfigFile.h.

References myDelimiter.

string ConfigFile::getComment ( ) const
inline

Definition at line 96 of file ConfigFile.h.

References myComment.

string ConfigFile::getSentry ( ) const
inline

Definition at line 97 of file ConfigFile.h.

References mySentry.

string ConfigFile::setDelimiter ( const string &  s)
inline

Definition at line 98 of file ConfigFile.h.

References myDelimiter.

string ConfigFile::setComment ( const string &  s)
inline

Definition at line 100 of file ConfigFile.h.

References load(), myComment, operator<<, operator>>, save(), string_as_T(), T_as_string(), and trim().

void ConfigFile::load ( string  filename,
bool  isList = false 
)

Definition at line 28 of file ConfigFile.cpp.

References file, and listmode.

Referenced by setComment().

void ConfigFile::save ( )

Definition at line 39 of file ConfigFile.cpp.

References file.

Referenced by remove(), and setComment().

template<class T >
string ConfigFile::T_as_string ( const T &  t)
staticprotected

Definition at line 131 of file ConfigFile.h.

Referenced by add(), keyExists(), remove(), and setComment().

template<class T >
T ConfigFile::string_as_T ( const string &  s)
staticprotected

Definition at line 143 of file ConfigFile.h.

Referenced by setComment().

void ConfigFile::trim ( string &  s)
staticprotected

Definition at line 64 of file ConfigFile.cpp.

Referenced by add(), operator>>(), remove(), and setComment().

template<>
string ConfigFile::string_as_T ( const string &  s)
inlineprotected

Definition at line 156 of file ConfigFile.h.

template<>
bool ConfigFile::string_as_T ( const string &  s)
inlineprotected

Definition at line 166 of file ConfigFile.h.

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const ConfigFile cf 
)
friend

Definition at line 73 of file ConfigFile.cpp.

Referenced by setComment().

std::istream& operator>> ( std::istream &  is,
ConfigFile cf 
)
friend

Definition at line 92 of file ConfigFile.cpp.

Referenced by setComment().

Member Data Documentation

string ConfigFile::myDelimiter
protected

Definition at line 57 of file ConfigFile.h.

Referenced by getDelimiter(), operator<<(), operator>>(), and setDelimiter().

string ConfigFile::myComment
protected

Definition at line 58 of file ConfigFile.h.

Referenced by getComment(), operator>>(), and setComment().

string ConfigFile::mySentry
protected

Definition at line 59 of file ConfigFile.h.

Referenced by getSentry(), and operator>>().

std::map<string,string> ConfigFile::myContents
protected

Definition at line 60 of file ConfigFile.h.

Referenced by keyExists(), operator<<(), operator>>(), and remove().

std::string ConfigFile::file
protected

Definition at line 64 of file ConfigFile.h.

Referenced by load(), and save().

bool ConfigFile::listmode
protected

Definition at line 65 of file ConfigFile.h.

Referenced by load(), operator<<(), and operator>>().


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