Poco::UPnP::GENA

class Deserializer

File Information

Library: UPnP/GENA
Package: GENA
Header: Poco/UPnP/GENA/Deserializer.h

Description

The Deserializer for the UPnP GENA Transport.

This class can deserialize GENA event messages (XML property sets). A special optimization allows for reuse of the Deserializer to deserialize multiple properties where each one is treated as a separate message (as required by the RemotingNG architecture).

Inheritance

Direct Base Classes: Poco::RemotingNG::Deserializer

All Base Classes: Poco::RemotingNG::Deserializer, Poco::RemotingNG::SerializerBase

Member Summary

Member Functions: deserialize, deserializeMessageBegin, deserializeMessageEnd, deserializeNullableBegin, deserializeNullableEnd, deserializeOne, deserializeSequenceBegin, deserializeSequenceEnd, deserializeStructBegin, deserializeStructEnd, findMessage, hasMoreProperties, popProperty, resetImpl, setupImpl

Inherited Functions: clearProperties, deserialize, deserializeMessageBegin, deserializeMessageEnd, deserializeNullableBegin, deserializeNullableEnd, deserializeOptionalBegin, deserializeOptionalEnd, deserializeSequenceBegin, deserializeSequenceEnd, deserializeStructBegin, deserializeStructEnd, findMessage, getProperty, hasProperty, popProperty, pushAttribute, pushProperty, reset, resetImpl, setup, setupImpl

Types

KeyValuePair

typedef std::pair < std::string, std::string > KeyValuePair;

KeyValueVec

typedef std::vector < KeyValuePair > KeyValueVec;

Constructors

Deserializer

Deserializer();

Creates a Deserializer.

Destructor

~Deserializer virtual

~Deserializer();

Destroys the Deserializer.

Member Functions

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    Poco::Int8 & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    Poco::UInt8 & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    Poco::Int16 & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    Poco::UInt16 & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    Poco::Int32 & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    Poco::UInt32 & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    long & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    unsigned long & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    Poco::Int64 & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    Poco::UInt64 & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    float & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    double & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    bool & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    char & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    std::string & value
);

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    std::vector < char > & value
);

deserializeMessageBegin

void deserializeMessageBegin(
    const std::string & name,
    Poco::RemotingNG::SerializerBase::MessageType type
);

deserializeMessageEnd

void deserializeMessageEnd(
    const std::string & name,
    Poco::RemotingNG::SerializerBase::MessageType type
);

deserializeNullableBegin virtual

bool deserializeNullableBegin(
    const std::string & name,
    bool isMandatory,
    bool & isNull
);

deserializeNullableEnd virtual

void deserializeNullableEnd(
    const std::string & name
);

deserializeSequenceBegin virtual

bool deserializeSequenceBegin(
    const std::string & name,
    bool isMandatory,
    Poco::UInt32 & sizeHint
);

deserializeSequenceEnd virtual

void deserializeSequenceEnd(
    const std::string & name
);

deserializeStructBegin virtual

bool deserializeStructBegin(
    const std::string & name,
    bool isMandatory
);

deserializeStructEnd virtual

void deserializeStructEnd(
    const std::string & name
);

findMessage

Poco::RemotingNG::SerializerBase::MessageType findMessage(
    std::string & name
);

hasMoreProperties inline

bool hasMoreProperties() const;

Returns true if there is at least one more property to deserialize.

popProperty

void popProperty();

Removes the last property from the vector.

deserializeOne protected

const std::string & deserializeOne();

resetImpl protected virtual

void resetImpl();

setupImpl protected virtual

void setupImpl(
    std::istream & istr
);

Securely control IoT edge devices from anywhere   Connect a Device