Poco::UPnP::ServiceDesc

class ServiceStateMachine

File Information

Library: UPnP/ServiceDesc
Package: ServiceDescParser
Header: Poco/UPnP/ServiceDesc/ServiceStateMachine.h

Description

A state machine for parsing a UPnP XML service description.

Member Summary

Member Functions: state, stateInfo

Nested Classes

struct StateInfo

 

Types

StateInfos

typedef std::vector < StateInfo > StateInfos;

the position of the vector equals the int value of the enum State

StateMap

typedef std::map < XML::XMLString, ServiceStateMachine::State > StateMap;

Maps an element name to the assigned State Due to performance reasons we define the localname of the xsd element as the key. The correct behavior would be to use the localname AND the url.

Successors

typedef std::map < XML::XMLString, State > Successors;

void

typedef void (ServiceContentHandler::* StartMethod)(const XML::XMLString &, const XML::XMLString &, const XML::XMLString &, const XML::Attributes &);

void

typedef void (ServiceContentHandler::* EndMethod)(const XML::XMLString &, const XML::XMLString &, const XML::XMLString &);

Enumerations

State

ST_UNINITIALIZED = 0

ST_INITIALIZED

ST_SCPD

ST_SPECVERSION

ST_MAJOR

ST_MINOR

ST_ACTIONLIST

ST_ACTION

ST_ACTION_NAME

ST_ACTION_OPTIONAL

ST_ARGUMENTLIST

ST_ARGUMENT

ST_ARGUMENT_NAME

ST_ARGUMENT_DIRECTION

ST_ARGUMENT_RETVAL

ST_ARGUMENT_RELATEDSTATEVARIABLE

ST_SERVICESTATETABLE

ST_STATEVARIABLE

ST_STATEVARIABLE_NAME

ST_STATEVARIABLE_DATATYPE

ST_STATEVARIABLE_DEFAULTVALUE

ST_STATEVARIABLE_ALLOWEDVALUE

ST_STATEVARIABLE_ALLOWEDVALUELIST

ST_STATEVARIABLE_ALLOWEDVALUERANGE

ST_STATEVARIABLE_ALLOWEDVALUERANGE_MIN

ST_STATEVARIABLE_ALLOWEDVALUERANGE_MAX

ST_STATEVARIABLE_ALLOWEDVALUERANGE_STEP

ST_STATEVARIABLE_OPTIONAL

ST_SENDEVENTSATTRIBUTE

ST_FINISHED

Constructors

ServiceStateMachine

ServiceStateMachine();

Creates the ServiceStateMachine.

Destructor

~ServiceStateMachine virtual

virtual ~ServiceStateMachine();

Destroys the ServiceStateMachine.

Member Functions

state inline

ServiceStateMachine::State state(
    const XML::XMLString & elementName,
    ServiceStateMachine::State parent
) const;

stateInfo inline

const ServiceStateMachine::StateInfo & stateInfo(
    ServiceStateMachine::State aState
) const;

Variables

ATTR_SENDEVENTS static

static const XML::XMLString ATTR_SENDEVENTS;

EL_ACTION static

static const XML::XMLString EL_ACTION;

EL_ACTIONLIST static

static const XML::XMLString EL_ACTIONLIST;

EL_ACTION_NAME static

static const XML::XMLString EL_ACTION_NAME;

EL_ACTION_OPTIONAL static

static const XML::XMLString EL_ACTION_OPTIONAL;

EL_ARGUMENT static

static const XML::XMLString EL_ARGUMENT;

EL_ARGUMENTLIST static

static const XML::XMLString EL_ARGUMENTLIST;

EL_ARGUMENT_DIRECTION static

static const XML::XMLString EL_ARGUMENT_DIRECTION;

EL_ARGUMENT_NAME static

static const XML::XMLString EL_ARGUMENT_NAME;

EL_ARGUMENT_RELATEDSTATEVARIABLE static

static const XML::XMLString EL_ARGUMENT_RELATEDSTATEVARIABLE;

EL_ARGUMENT_RETVAL static

static const XML::XMLString EL_ARGUMENT_RETVAL;

EL_MAJOR static

static const XML::XMLString EL_MAJOR;

EL_MINOR static

static const XML::XMLString EL_MINOR;

EL_SCPD static

static const XML::XMLString EL_SCPD;

EL_SENDEVENTSATTRIBUTE static

static const XML::XMLString EL_SENDEVENTSATTRIBUTE;

EL_SERVICESTATETABLE static

static const XML::XMLString EL_SERVICESTATETABLE;

EL_SPECVERSION static

static const XML::XMLString EL_SPECVERSION;

EL_STATEVARIABLE static

static const XML::XMLString EL_STATEVARIABLE;

EL_STATEVARIABLE_ALLOWEDVALUE static

static const XML::XMLString EL_STATEVARIABLE_ALLOWEDVALUE;

EL_STATEVARIABLE_ALLOWEDVALUELIST static

static const XML::XMLString EL_STATEVARIABLE_ALLOWEDVALUELIST;

EL_STATEVARIABLE_ALLOWEDVALUERANGE static

static const XML::XMLString EL_STATEVARIABLE_ALLOWEDVALUERANGE;

EL_STATEVARIABLE_ALLOWEDVALUERANGE_MAX static

static const XML::XMLString EL_STATEVARIABLE_ALLOWEDVALUERANGE_MAX;

EL_STATEVARIABLE_ALLOWEDVALUERANGE_MIN static

static const XML::XMLString EL_STATEVARIABLE_ALLOWEDVALUERANGE_MIN;

EL_STATEVARIABLE_ALLOWEDVALUERANGE_STEP static

static const XML::XMLString EL_STATEVARIABLE_ALLOWEDVALUERANGE_STEP;

EL_STATEVARIABLE_DATATYPE static

static const XML::XMLString EL_STATEVARIABLE_DATATYPE;

EL_STATEVARIABLE_DEFAULTVALUE static

static const XML::XMLString EL_STATEVARIABLE_DEFAULTVALUE;

EL_STATEVARIABLE_NAME static

static const XML::XMLString EL_STATEVARIABLE_NAME;

EL_STATEVARIABLE_OPTIONAL static

static const XML::XMLString EL_STATEVARIABLE_OPTIONAL;

Securely control IoT edge devices from anywhere   Connect a Device