#include <Configuration.h>
Inheritance diagram for ACE_Configuration:


| Public Types | |
| enum | VALUETYPE { STRING, INTEGER, BINARY, INVALID } | 
| Enumeration for the various types of values we can store.  More... | |
| Public Member Functions | |
| virtual | ~ACE_Configuration (void) | 
| Destructor. | |
| virtual const ACE_Configuration_Section_Key & | root_section (void) const | 
| Obtain a reference to the root section of this configuration. | |
| virtual int | open_section (const ACE_Configuration_Section_Key &base, const ACE_TCHAR *sub_section, int create, ACE_Configuration_Section_Key &result)=0 | 
| virtual int | remove_section (const ACE_Configuration_Section_Key &key, const ACE_TCHAR *sub_section, int recursive)=0 | 
| Removes a named section. | |
| virtual int | enumerate_values (const ACE_Configuration_Section_Key &key, int index, ACE_TString &name, VALUETYPE &type)=0 | 
| virtual int | enumerate_sections (const ACE_Configuration_Section_Key &key, int index, ACE_TString &name)=0 | 
| virtual int | set_string_value (const ACE_Configuration_Section_Key &key, const ACE_TCHAR *name, const ACE_TString &value)=0 | 
| Sets a string-typed value. | |
| virtual int | set_integer_value (const ACE_Configuration_Section_Key &key, const ACE_TCHAR *name, u_int value)=0 | 
| Sets a integer-typed value. | |
| virtual int | set_binary_value (const ACE_Configuration_Section_Key &key, const ACE_TCHAR *name, const void *data, size_t length)=0 | 
| Sets a binary-typed value. | |
| virtual int | get_string_value (const ACE_Configuration_Section_Key &key, const ACE_TCHAR *name, ACE_TString &value)=0 | 
| Gets a string-typed value. | |
| virtual int | get_integer_value (const ACE_Configuration_Section_Key &key, const ACE_TCHAR *name, u_int &value)=0 | 
| Gets an integer-typed value. | |
| virtual int | get_binary_value (const ACE_Configuration_Section_Key &key, const ACE_TCHAR *name, void *&data, size_t &length)=0 | 
| Gets a binary-typed value. | |
| virtual int | find_value (const ACE_Configuration_Section_Key &key, const ACE_TCHAR *name, VALUETYPE &type)=0 | 
| virtual int | remove_value (const ACE_Configuration_Section_Key &key, const ACE_TCHAR *name)=0 | 
| Removes a named value. | |
| int | expand_path (const ACE_Configuration_Section_Key &key, const ACE_TString &path_in, ACE_Configuration_Section_Key &key_out, int create=1) | 
| int | export_config (const ACE_TCHAR *filename) | 
| int | import_config (const ACE_TCHAR *filename) | 
| bool | operator== (const ACE_Configuration &rhs) const | 
| bool | operator!= (const ACE_Configuration &rhs) const | 
| Static Public Attributes | |
| ACE_TCHAR | NULL_String_ = '\0' | 
| Protected Member Functions | |
| ACE_Configuration (void) | |
| Default ctor. | |
| ACE_Section_Key_Internal * | get_internal_key (const ACE_Configuration_Section_Key &key) | 
| Resolves the internal key from a section key. | |
| int | validate_name (const ACE_TCHAR *name, int allow_path=0) | 
| int | validate_value_name (const ACE_TCHAR *name) | 
| ACE_Configuration (const ACE_Configuration &rhs) | |
| ACE_Configuration & | operator= (const ACE_Configuration &rhs) | 
| Protected Attributes | |
| ACE_Configuration_Section_Key | root_ | 
For internal use only.
This class provides an interface for configuration databases. A concrete class is required that implements the interface.
| 
 | 
| Enumeration for the various types of values we can store. 
 | 
| 
 | 
| Destructor. 
 | 
| 
 | 
| Default ctor. 
 | 
| 
 | 
| 
 | 
| 
 | ||||||||||||||||
| Enumerates through the subsections in a section. 
 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | ||||||||||||||||||||
| Enumerates through the values in a section. 
 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | ||||||||||||||||||||
| Expands <path_in> to <key_out> from <key>. If create is true, the subsections are created. Returns 0 on success, non zero on error The path consists of sections separated by the backslash '\' or forward slash '/'. Returns 0 on success, -1 if <create) is 0 and the path refers a nonexistant section | 
| 
 | 
| 
 
 | 
| 
 | ||||||||||||||||
| Retrieves the type of a named configuration value. 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | ||||||||||||||||||||
| Gets a binary-typed value. 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | ||||||||||||||||
| Gets an integer-typed value. 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | 
| Resolves the internal key from a section key. 
 | 
| 
 | ||||||||||||||||
| Gets a string-typed value. 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | 
| 
 
 | 
| 
 | ||||||||||||||||||||
| Opens a named section in an existing section. 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | 
| Determine if the contents of this object are different from the contents of the object on the right hand side. Returns 0 (False) if they are equal and 1 (True) if they are not equal | 
| 
 | 
| 
 | 
| 
 | 
| Determine if the contents of this object is the same as the contents of the object on the right hand side. Returns 1 (True) if they are equal and 0 (False) if they are not equal | 
| 
 | ||||||||||||||||
| Removes a named section. 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | ||||||||||||
| Removes a named value. 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | 
| Obtain a reference to the root section of this configuration. 
 | 
| 
 | ||||||||||||||||||||
| Sets a binary-typed value. 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | ||||||||||||||||
| Sets a integer-typed value. 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | ||||||||||||||||
| Sets a string-typed value. 
 
 
 Implemented in ACE_Configuration_Win32Registry, and ACE_Configuration_Heap. | 
| 
 | ||||||||||||
| Tests to see if <name> is valid. <name> must be < 255 characters and not contain the path separator '\', brackets [] or = (maybe just restrict to alphanumeric?) returns non zero if name is not valid. The path separator is allowed, except for the first character, if <allow_path> is true. | 
| 
 | 
| Test to see if <name> is valid. The default value for a key can be unnamed, which means either <name> is == 0 or <name> == '` is valid. Otherwise, it calls validate_name() to test <name> for the same rules that apply to keys. | 
| 
 | 
| * Represents the "NULL" string to simplify the internal logic. | 
| 
 | 
| 
 | 
 1.3.9.1
 1.3.9.1