Poco::RemotingNG::SOAP

class Deserializer

File Information

Library: RemotingNG/SOAP
Package: SOAP
Header: Poco/RemotingNG/SOAP/Deserializer.h

Description

The Deserializer implementation for the SOAP Transport.

For more information, please see the Serializer documentation.

The deserializer can also be used to deserialize plain XML. To do so, instead of deserializeMessageBegin() and deserializeMessageEnd(), call deserializeStructBegin() and deserializeStructEnd(), respectively, at the root level, after calling setup().

Inheritance

Direct Base Classes: Poco::RemotingNG::Deserializer

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

Member Summary

Member Functions: addHeaderInterceptor, deserialize, deserializeMessageBegin, deserializeMessageEnd, deserializeNullableBegin, deserializeNullableEnd, deserializeOptionalBegin, deserializeOptionalEnd, deserializeSequenceBegin, deserializeSequenceEnd, deserializeStructBegin, deserializeStructEnd, enableMTOM, findMessage, isMTOMEnabled, parseContentType, pushAttribute, removeHeaderInterceptor, resetImpl, setupImpl, soapVersion

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

Nested Classes

class HeaderInterceptor

Subclasses of this class can be registered with the Deserializer (via the Transport or Listener) to process the SOAP envelope header element and its children. 

Constructors

Deserializer

Deserializer();

Creates the Deserializer.

Destructor

~Deserializer virtual

~Deserializer();

Destroys the Deserializer.

Member Functions

addHeaderInterceptor

void addHeaderInterceptor(
    HeaderInterceptor::Ptr pInterceptor
);

Adds a header interceptor which can be used to handle the SOAP Header element content, e.g. for adding a WS-Security header.

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
);

deserialize virtual

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

deserialize virtual

bool deserialize(
    const std::string & name,
    bool isMandatory,
    Poco::LocalDateTime & 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
);

deserializeOptionalBegin virtual

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

deserializeOptionalEnd virtual

void deserializeOptionalEnd(
    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
);

enableMTOM

void enableMTOM(
    bool enable
);

Enable MTOM for the next messages.

findMessage

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

isMTOMEnabled

bool isMTOMEnabled() const;

Returns true if and only if MTOM is enabled.

parseContentType

void parseContentType(
    const std::string & contentType
);

If MTOM is enabled, parses the Content-Type for MIME boundary and content IDs.

pushAttribute virtual

void pushAttribute(
    const std::string & ns,
    const std::string & attrName,
    bool isMandatory
);

removeHeaderInterceptor

void removeHeaderInterceptor(
    HeaderInterceptor::Ptr pInterceptor
);

Removes the given header interceptor.

soapVersion inline

Serializer::SOAPVersion soapVersion() const;

Returns the SOAP version (1.1 or 1.2) of the most recently processed message.

resetImpl protected virtual

void resetImpl();

setupImpl protected virtual

void setupImpl(
    std::istream & istr
);

Securely control IoT edge devices from anywhere   Connect a Device