Poco::Util

class ConfigurationView

Library: Util
Package: Configuration
Header: Poco/Util/ConfigurationView.h

Description

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.

Inheritance

Direct Base Classes: AbstractConfiguration

All Base Classes: Poco::RefCountedObject, AbstractConfiguration

Member Summary

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

Constructors

ConfigurationView

ConfigurationView(
    const std::string & prefix,
    AbstractConfiguration * pConfig
);

Creates the ConfigurationView. The ConfigurationView does not take ownership of the passed configuration.

Destructor

~ConfigurationView protected virtual

~ConfigurationView();

Member Functions

enumerate protected virtual

void enumerate(
    const std::string & key,
    Keys & range
) const;

See also: Poco::Util::AbstractConfiguration::enumerate()

getRaw protected virtual

bool getRaw(
    const std::string & key,
    std::string & value
) const;

See also: Poco::Util::AbstractConfiguration::getRaw()

setRaw protected virtual

void setRaw(
    const std::string & key,
    const std::string & value
);

See also: Poco::Util::AbstractConfiguration::setRaw()

translateKey protected

std::string translateKey(
    const std::string & key
) const;