Difference between revisions of "ConfigurationParserLibrary"
(→CONF_SYSTEM) |
|||
| Line 2: | Line 2: | ||
The basic layout of a configuration system is a system that has multiple targets (which may inherit from each other), every target can have some libraries, assemblies override clusters and normal clusters. Clusters can have sub clusters. | The basic layout of a configuration system is a system that has multiple targets (which may inherit from each other), every target can have some libraries, assemblies override clusters and normal clusters. Clusters can have sub clusters. | ||
[[Image:Config_basic_layout.png|||none]] | [[Image:Config_basic_layout.png|||none]] | ||
| − | == CONF_SYSTEM == | + | === CONF_SYSTEM === |
Every configuration file describes one CONF_SYSTEM and has one or more CONF_TARGET associated. Normally a CONF_SYSTEM object is generated by parsing a configuration file with CONF_LOAD. | Every configuration file describes one CONF_SYSTEM and has one or more CONF_TARGET associated. Normally a CONF_SYSTEM object is generated by parsing a configuration file with CONF_LOAD. | ||
| − | === Implementation === | + | ==== Implementation ==== |
| − | == CONF_TARGET == | + | === CONF_TARGET === |
| − | == CONF_LIBRARY == | + | === CONF_LIBRARY === |
| − | == CONF_ASSEMBLY == | + | === CONF_ASSEMBLY === |
| − | == CONF_CLUSTER == | + | === CONF_CLUSTER === |
| − | == CONF_OVERRIDE == | + | === CONF_OVERRIDE === |
| + | |||
| + | == Retrieval and Storage == | ||
| + | Loading a configuration from a file. | ||
| + | <code>[eiffel,n] | ||
| + | load_configuration (a_file: STRING) is | ||
| + | -- Load configuration file `a_file'. | ||
| + | require | ||
| + | a_file_ok: a_file /= Void and then not a_file.is_empty | ||
| + | local | ||
| + | l_loader: CONF_LOAD | ||
| + | do | ||
| + | create l_loader.make (create {CONF_PARSE_FACTORY}) | ||
| + | l_loader.retrieve_configuration (a_file) | ||
| + | if l_loader.is_error then | ||
| + | display_error (l_loader.last_error) | ||
| + | else | ||
| + | system := l_loader.last_system | ||
| + | end | ||
| + | end | ||
| + | </code> | ||
Revision as of 13:23, 30 October 2006
Contents
General
The basic layout of a configuration system is a system that has multiple targets (which may inherit from each other), every target can have some libraries, assemblies override clusters and normal clusters. Clusters can have sub clusters.
CONF_SYSTEM
Every configuration file describes one CONF_SYSTEM and has one or more CONF_TARGET associated. Normally a CONF_SYSTEM object is generated by parsing a configuration file with CONF_LOAD.
Implementation
CONF_TARGET
CONF_LIBRARY
CONF_ASSEMBLY
CONF_CLUSTER
CONF_OVERRIDE
Retrieval and Storage
Loading a configuration from a file.
load_configuration (a_file: STRING) is -- Load configuration file `a_file'. require a_file_ok: a_file /= Void and then not a_file.is_empty local l_loader: CONF_LOAD do create l_loader.make (create {CONF_PARSE_FACTORY}) l_loader.retrieve_configuration (a_file) if l_loader.is_error then display_error (l_loader.last_error) else system := l_loader.last_system end end


