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: AbstractConfigurationView

All Base Classes: Poco::RefCountedObject, AbstractConfiguration, AbstractConfigurationView

Member Summary

Member Functions: getRaw

Inherited Functions: createLocalView, createView, duplicate, enableEvents, enumerate, eventsEnabled, expand, getBool, getDouble, getInt, getInt16, getInt32, getInt64, getRaw, getRawString, getString, getUInt, getUInt16, getUInt32, getUInt64, has, hasOption, hasProperty, keys, operator =, pConfig, parseBool, parseInt, parseInt16, parseInt64, parseUInt, parseUInt16, parseUInt64, prefix, referenceCount, release, remove, removeRaw, setBool, setDouble, setInt, setInt16, setInt32, setInt64, setRaw, setRawWithEvent, setString, setUInt, setUInt16, setUInt32, setUInt64, translateKey

Constructors

ConfigurationView

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

Creates the ConfigurationView. The ConfigurationView retains (shared) ownership of the passed configuration.

Destructor

~ConfigurationView virtual

~ConfigurationView() = default;

Member Functions

getRaw protected virtual

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