KD SOAP 2.0.0
Loading...
Searching...
No Matches
KDSoapMessageAddressingProperties.h
1/****************************************************************************
2**
3** This file is part of the KD Soap library.
4**
5** SPDX-FileCopyrightText: 2010-2021 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
6**
7** SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDAB-KDSoap OR LicenseRef-KDAB-KDSoap-US
8**
9** Licensees holding valid commercial KD Soap licenses may use this file in
10** accordance with the KD Soap Commercial License Agreement provided with
11** the Software.
12**
13** Contact info@kdab.com if any conditions of this licensing are not clear to you.
14**
15****************************************************************************/
16#ifndef KDSOAPMESSAGEADDRESSINGPROPERTIES_H
17#define KDSOAPMESSAGEADDRESSINGPROPERTIES_H
18
19#include <QtCore/QSharedDataPointer>
20#include "KDSoapGlobal.h"
21
22#include "KDSoapEndpointReference.h"
23#include "KDSoapValue.h"
24
25QT_BEGIN_NAMESPACE
26class QString;
27QT_END_NAMESPACE
28
29class KDSoapNamespacePrefixes;
30class KDSoapMessageAddressingPropertiesData;
31
40
41struct Relationship
42{
46 Relationship()
47 {
48 }
49
57 Relationship(const QString &URI, const QString &type = QString())
58 : uri(URI)
59 , relationshipType(type)
60 {
61 }
62
63 QString uri;
64 QString relationshipType;
65};
66
67} // namespace
68
82{
83public:
84 friend class KDSoapMessageWriter;
85 friend class KDSoapMessageReader;
86
93 {
94 None,
95 Anonymous,
96 Reply,
97 Unspecified
98 };
99
107 {
108 Addressing200303,
109 Addressing200403,
110 Addressing200408,
111 Addressing200508
112 };
113
118
123
128
133
137 QString destination() const;
138
142 void setDestination(const QString &destination);
143
147 QString action() const;
148
152 void setAction(const QString &action);
153
158 KDSoapEndpointReference sourceEndpoint() const;
159
164 QString sourceEndpointAddress() const;
165
170 void setSourceEndpoint(const KDSoapEndpointReference &sourceEndpoint);
171
175 void setSourceEndpointAddress(const QString &sourceEndpoint);
176
181 KDSoapEndpointReference replyEndpoint() const;
182
186 QString replyEndpointAddress() const;
187
192 void setReplyEndpoint(const KDSoapEndpointReference &replyEndpoint);
193
197 void setReplyEndpointAddress(const QString &replyEndpoint);
198
202 KDSoapEndpointReference faultEndpoint() const;
203
207 QString faultEndpointAddress() const;
208
213 void setFaultEndpoint(const KDSoapEndpointReference &faultEndpoint);
214
218 void setFaultEndpointAddress(const QString &faultEndpoint);
219
223 QString messageID() const;
224
228 void setMessageID(const QString &id);
229
235 QVector<KDSoapMessageRelationship::Relationship> relationships() const;
236
244 void setRelationships(const QVector<KDSoapMessageRelationship::Relationship> &relationships);
245
252 void addRelationship(const KDSoapMessageRelationship::Relationship &relationship);
253
257 KDSoapValueList referenceParameters() const;
258
262 void setReferenceParameters(const KDSoapValueList &values);
263
267 void addReferenceParameter(const KDSoapValue &oneReferenceParameter);
268
272 KDSoapValueList metadata() const;
273
277 void setMetadata(const KDSoapValueList &metadataList);
278
282 void addMetadata(const KDSoapValue &metadata);
283
288 KDSoapAddressingNamespace addressingNamespace() const;
289
296 void setAddressingNamespace(KDSoapAddressingNamespace addressingNamespace);
297
301 static QString predefinedAddressToString(KDSoapAddressingPredefinedAddress address,
302 KDSoapAddressingNamespace addressingNamespace = Addressing200508);
303
307 static bool isWSAddressingNamespace(const QString &namespaceUri);
308
313 static QString addressingNamespaceToString(KDSoapAddressingNamespace addressingNamespace);
314
315private:
319 void writeMessageAddressingProperties(KDSoapNamespacePrefixes &namespacePrefixes, QXmlStreamWriter &writer, const QString &messageNamespace,
320 bool forceQualified) const;
321
325 void readMessageAddressingProperty(const KDSoapValue &value);
326
327private:
328 QSharedDataPointer<KDSoapMessageAddressingPropertiesData> d;
329};
330
334KDSOAP_EXPORT QDebug operator<<(QDebug dbg, const KDSoapMessageAddressingProperties &msg);
335
336#endif // KDSOAPMESSAGEADDRESSINGPROPERTIES_H
Definition: KDSoapEndpointReference.h:34
Definition: KDSoapMessageAddressingProperties.h:82
KDSoapAddressingPredefinedAddress
Definition: KDSoapMessageAddressingProperties.h:93
KDSoapAddressingNamespace
Definition: KDSoapMessageAddressingProperties.h:107
Definition: KDSoapValue.h:66
Definition: KDSoapValue.h:327
Definition: KDSoapMessageAddressingProperties.h:39

© 2010-2021 Klarälvdalens Datakonsult AB (KDAB)
"The Qt, C++ and OpenGL Experts"
https://www.kdab.com/
https://www.kdab.com/development-resources/qt-tools/kd-soap/
Generated on Fri May 1 2026 03:12:45 for KD SOAP by doxygen 1.9.6