#include <BESKeys.h>
Inheritance diagram for BESKeys:
Public Types | |
typedef map< string, string >::const_iterator | Keys_citer |
Public Member Functions | |
~BESKeys () | |
cleans up the key/value pair mapping | |
string | keys_file_name () |
string | set_key (const string &key, const string &val) |
allows the user to set key/value pairs from within the application. | |
string | set_key (const string &pair) |
allows the user to set key/value pairs from within the application. | |
string | get_key (const string &s, bool &found) |
Retrieve the value of a given key, if set. | |
void | show_keys () |
displays all key/value pairs defined to standard output. | |
Keys_citer | keys_begin () |
Keys_citer | keys_end () |
virtual void | dump (ostream &strm) const |
dumps information about this object | |
Protected Member Functions | |
BESKeys (const string &keys_file_name) | |
default constructor that reads loads key/value pairs from the specified file. |
BESKeys provides a mechanism to define the behavior of an application given key/value paris. For example, how authentication will work, database access information, level of debugging and where log files are to be located.
Key/value pairs can be loaded from an external initialization file or set within the application itself, for example from the command line.
If from a file the key/value pair is set one per line and cannot span multiple lines. Comments are allowed using the pound (#) character. For example:
# # Who is responsable for this server # BES.ServerAdministrator=dods-tech.ucar.edu
# # Default server port and unix socket information and whether the server is secure or not. # BES.ServerPort=10002 BES.ServerUnixSocket=/tmp/bes.socket BES.ServerSecure=no
Key/value pairs can also be set by passing in a key=value string, or by passing in a key and value string to the object.
BES provides a single object for access to a single BESKeys object, TheBESKeys.
|
|
|
default constructor that reads loads key/value pairs from the specified file. This constructor uses the specified file to load key/value pairs. This file holds different key/value pairs for the application, one key/value pair per line separated by an equal (=) sign. key=value Comments are allowed in the file and must begin with a pound (#) sign at the beginning of the line. No comments are allowed at the end of lines.
|
|
cleans up the key/value pair mapping
|
|
dumps information about this object Displays the pointer value of this instance along with all of the keys.
Implements BESObj. |
|
Retrieve the value of a given key, if set. This method allows the user of BESKeys to retrieve the value of the specified key.
|
|
|
|
|
|
|
|
allows the user to set key/value pairs from within the application. This method allows users of BESKeys to set key/value pairs from within the application, such as for testing purposes, key/value pairs from the command line, etc... If the key is already set then this value replaces the value currently held in the keys map.
|
|
allows the user to set key/value pairs from within the application. This method allows users of BESKeys to set key/value pairs from within the application, such as for testing purposes, key/value pairs from the command line, etc... If the key is already set then this value replaces the value currently held in the keys map.
|
|
displays all key/value pairs defined to standard output. This method allows the user to see all of the key/value pairs that are currently defined. The output looks like:
key: "key", value: "value" |