Poco::Data

template < class C >

class AbstractSessionImpl

Library: Data
Package: DataCore
Header: Poco/Data/AbstractSessionImpl.h

Description

A partial implementation of SessionImpl, providing features and properties management.

To implement a certain feature or property, a subclass must provide setter and getter methods and register them with addFeature() or addProperty().

Inheritance

Direct Base Classes: SessionImpl

All Base Classes: SessionImpl, Poco::RefCountedObject

Member Summary

Member Functions: addFeature, addProperty, getFeature, getProperty, setFeature, setProperty

Inherited Functions: begin, close, commit, createStatementImpl, duplicate, getFeature, getProperty, isConnected, isTransaction, referenceCount, release, rollback, setFeature, setProperty

Types

Poco::Any

typedef Poco::Any (C::* PropertyGetter)(const std::string &);

The getter method for a property.

bool

typedef bool (C::* FeatureGetter)(const std::string &);

The getter method for a feature.

void

typedef void (C::* FeatureSetter)(const std::string &, bool);

The setter method for a feature.

void

typedef void (C::* PropertySetter)(const std::string &, const Poco::Any &);

The setter method for a property.

Constructors

AbstractSessionImpl inline

AbstractSessionImpl();

Creates the AbstractSessionImpl.

Destructor

~AbstractSessionImpl virtual inline

~AbstractSessionImpl();

Destroys the AbstractSessionImpl.

Member Functions

getFeature virtual inline

bool getFeature(
    const std::string & name
);

Looks a feature up in the features map and calls the feature's getter, if there is one.

See also: Poco::Data::SessionImpl::getFeature()

getProperty virtual inline

Poco::Any getProperty(
    const std::string & name
);

Looks a property up in the properties map and calls the property's getter, if there is one.

See also: Poco::Data::SessionImpl::getProperty()

setFeature virtual inline

void setFeature(
    const std::string & name,
    bool state
);

Looks a feature up in the features map and calls the feature's setter, if there is one.

See also: Poco::Data::SessionImpl::setFeature()

setProperty virtual inline

void setProperty(
    const std::string & name,
    const Poco::Any & value
);

Looks a property up in the properties map and calls the property's setter, if there is one.

See also: Poco::Data::SessionImpl::setProperty()

addFeature protected inline

void addFeature(
    const std::string & name,
    FeatureSetter setter,
    FeatureGetter getter
);

Adds a feature to the map of supported features.

The setter or getter can be null, in case setting or getting a feature is not supported.

addProperty protected inline

void addProperty(
    const std::string & name,
    PropertySetter setter,
    PropertyGetter getter
);

Adds a property to the map of supported properties.

The setter or getter can be null, in case setting or getting a property is not supported.