Library: Util
Package: Configuration
Header: Poco/Util/ConfigurationView.h
This configuration implements a "view" into a sub-hierarchy of another configuration.
For example, given a configuration with the following properties:
config.value1
config.value2
config.sub.value1
config.sub.value2
and a ConfigurationView with the prefix "config", then the above properties will be available via the view as
value1
value2
sub.value1
sub.value2
A ConfigurationView is most useful in combination with a LayeredConfiguration.
If a property is not found in the view, it is searched in the original configuration. Given the above example configuration, the property named "config.value1" will still be found in the view.
The main reason for this is that placeholder expansion (${property}) still works as expected given a ConfigurationView.
Direct Base Classes: AbstractConfiguration
All Base Classes: Poco::RefCountedObject, AbstractConfiguration
Member Functions: enumerate, getRaw, setRaw, translateKey
Inherited Functions: createView, duplicate, enumerate, expand, getBool, getDouble, getInt, getRaw, getRawString, getString, hasOption, hasProperty, keys, parseBool, parseInt, referenceCount, release, setBool, setDouble, setInt, setRaw, setString
ConfigurationView(
const std::string & prefix,
AbstractConfiguration * pConfig
);
Creates the ConfigurationView. The ConfigurationView does not take ownership of the passed configuration.
void enumerate(
const std::string & key,
Keys & range
) const;
bool getRaw(
const std::string & key,
std::string & value
) const;
void setRaw(
const std::string & key,
const std::string & value
);
std::string translateKey(
const std::string & key
) const;