16#include <QLatin1String>
18#include <QXmlStreamWriter>
20class KDSoapMessageAddressingPropertiesData :
public QSharedData
39 : d(new KDSoapMessageAddressingPropertiesData)
56 return d->destination;
76 return d->sourceEndpoint;
81 return d->sourceEndpoint.address();
96 return d->replyEndpoint;
101 return d->replyEndpoint.address();
116 return d->faultEndpoint;
121 return d->faultEndpoint.address();
146 return d->relationships;
156 d->relationships.append(relationship);
161 return d->referenceParameters;
166 d->referenceParameters = values;
171 if (!oneReferenceParameter.
isNull()) {
172 d->referenceParameters.append(oneReferenceParameter);
183 d->metadata = metadataList;
195 return d->addressingNamespace;
223 qWarning(
"Anything but Anonymous or Unspecified has no meaning in ws-addressing 2004/08 and earlier");
284 qWarning(
"Warning: KDSoapMessageAddressingProperties call to writeKDSoapValueVariant could not write the given KDSoapValue "
285 "value because it could not be converted into a QString");
292 for (
const KDSoapValue &value : qAsConst(values)) {
293 const QString topLevelName = value.name();
296 if (value.childValues().isEmpty()) {
307 const QString &messageNamespace,
bool forceQualified)
const
309 Q_UNUSED(messageNamespace);
310 Q_UNUSED(forceQualified);
312 bool supportsNoneAddressing =
false;
313 switch (d->addressingNamespace) {
317 supportsNoneAddressing =
false;
320 supportsNoneAddressing =
true;
330 if (!d->destination.isEmpty()) {
336 if (!d->sourceEndpoint.isEmpty()) {
342 if (!d->replyEndpoint.isEmpty()) {
348 if (!d->faultEndpoint.isEmpty()) {
354 if (!d->action.isEmpty()) {
360 if (!d->messageID.isEmpty()) {
367 if (relationship.uri.isEmpty()) {
373 if (!relationship.relationshipType.isEmpty()) {
381 if (!d->referenceParameters.isEmpty()) {
387 if (!d->metadata.isEmpty()) {
394void KDSoapMessageAddressingProperties::readMessageAddressingProperty(
const KDSoapValue &value)
418 d->relationships.append(relationship);
static void writeKDSoapValueVariant(QXmlStreamWriter &writer, const KDSoapValue &value)
static void writeKDSoapValueListHierarchy(KDSoapNamespacePrefixes &namespacePrefixes, QXmlStreamWriter &writer, const QString &addressingNS, const KDSoapValueList &values)
QDebug operator<<(QDebug dbg, const KDSoapMessageAddressingProperties &msg)
static void writeAddressField(QXmlStreamWriter &writer, const QString &addressingNS, const QString &address)
void addMetadata(const KDSoapValue &metadata)
void addReferenceParameter(const KDSoapValue &oneReferenceParameter)
void addRelationship(const KDSoapMessageRelationship::Relationship &relationship)
KDSoapEndpointReference faultEndpoint() const
QVector< KDSoapMessageRelationship::Relationship > relationships() const
KDSoapValueList metadata() const
void setSourceEndpoint(const KDSoapEndpointReference &sourceEndpoint)
void setReplyEndpoint(const KDSoapEndpointReference &replyEndpoint)
KDSoapMessageAddressingProperties()
void setReplyEndpointAddress(const QString &replyEndpoint)
void setAddressingNamespace(KDSoapAddressingNamespace addressingNamespace)
KDSoapMessageAddressingProperties & operator=(const KDSoapMessageAddressingProperties &other)
QString faultEndpointAddress() const
KDSoapAddressingNamespace addressingNamespace() const
void setFaultEndpoint(const KDSoapEndpointReference &faultEndpoint)
void setSourceEndpointAddress(const QString &sourceEndpoint)
void setMetadata(const KDSoapValueList &metadataList)
void setReferenceParameters(const KDSoapValueList &values)
KDSoapAddressingPredefinedAddress
KDSoapAddressingNamespace
~KDSoapMessageAddressingProperties()
void setDestination(const QString &destination)
QString messageID() const
void setMessageID(const QString &id)
QString replyEndpointAddress() const
KDSoapEndpointReference sourceEndpoint() const
void setAction(const QString &action)
void setFaultEndpointAddress(const QString &faultEndpoint)
QString destination() const
QString sourceEndpointAddress() const
static QString predefinedAddressToString(KDSoapAddressingPredefinedAddress address, KDSoapAddressingNamespace addressingNamespace=Addressing200508)
KDSoapEndpointReference replyEndpoint() const
static bool isWSAddressingNamespace(const QString &namespaceUri)
static QString addressingNamespaceToString(KDSoapAddressingNamespace addressingNamespace)
void setRelationships(const QVector< KDSoapMessageRelationship::Relationship > &relationships)
KDSoapValueList referenceParameters() const
static QString soapMessageAddressing200303()
static QString soapMessageAddressing200408()
static QString soapMessageAddressing()
static QString soapMessageAddressing200403()
KDSoapValue child(const QString &name) const
QList< KDSoapValue > & attributes()
KDSoapValueList & childValues() const
bool canConvert(int targetTypeId) const const
QString toString() const const
void writeAttribute(const QString &qualifiedName, const QString &value)
void writeCharacters(const QString &text)
void writeStartElement(const QString &qualifiedName)