diff options
| author | Niels Ole Salscheider <niels_ole@salscheider-online.de> | 2017-02-12 17:18:06 +0100 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2017-02-12 17:18:06 +0100 |
| commit | 084eb01fb395488a0a3aee799be2b72ce11aa220 (patch) | |
| tree | 6fec32386c116b0560b9c5d81412993361a2f453 /src/base/QXmppStanza.cpp | |
| parent | 9deb86b248fee6bb9bcee14d595a933c8fdc4aa2 (diff) | |
| download | qxmpp-084eb01fb395488a0a3aee799be2b72ce11aa220.tar.gz | |
Implement XEP-0198: Stream Management (client only) (#99)
* Some features can be available with different namespaces (e.g. SM)
* Provide static functions to convert between strings and stream errors
Stream management will reuse this for <failed />.
* [travis] test builds using clang
* Implement XEP-0198: Stream Management (client only)
* QXmppOutgoingClient: Move private methods to QXmppOutgoingClientPrivate
Diffstat (limited to 'src/base/QXmppStanza.cpp')
| -rw-r--r-- | src/base/QXmppStanza.cpp | 106 |
1 files changed, 11 insertions, 95 deletions
diff --git a/src/base/QXmppStanza.cpp b/src/base/QXmppStanza.cpp index 99b0692e..a2bb43be 100644 --- a/src/base/QXmppStanza.cpp +++ b/src/base/QXmppStanza.cpp @@ -25,6 +25,7 @@ #include "QXmppStanza.h" +#include "QXmppStanza_p.h" #include "QXmppUtils.h" #include "QXmppConstants_p.h" @@ -245,55 +246,7 @@ QString QXmppStanza::Error::getTypeStr() const QString QXmppStanza::Error::getConditionStr() const { - switch(m_condition) - { - case BadRequest: - return "bad-request"; - case Conflict: - return "conflict"; - case FeatureNotImplemented: - return "feature-not-implemented"; - case Forbidden: - return "forbidden"; - case Gone: - return "gone"; - case InternalServerError: - return "internal-server-error"; - case ItemNotFound: - return "item-not-found"; - case JidMalformed: - return "jid-malformed"; - case NotAcceptable: - return "not-acceptable"; - case NotAllowed: - return "not-allowed"; - case NotAuthorized: - return "not-authorized"; - case PaymentRequired: - return "payment-required"; - case RecipientUnavailable: - return "recipient-unavailable"; - case Redirect: - return "redirect"; - case RegistrationRequired: - return "registration-required"; - case RemoteServerNotFound: - return "remote-server-not-found"; - case RemoteServerTimeout: - return "remote-server-timeout"; - case ResourceConstraint: - return "resource-constraint"; - case ServiceUnavailable: - return "service-unavailable"; - case SubscriptionRequired: - return "subscription-required"; - case UndefinedCondition: - return "undefined-condition"; - case UnexpectedRequest: - return "unexpected-request"; - default: - return ""; - } + return strFromCondition(m_condition); } void QXmppStanza::Error::setTypeFromStr(const QString& type) @@ -314,52 +267,7 @@ void QXmppStanza::Error::setTypeFromStr(const QString& type) void QXmppStanza::Error::setConditionFromStr(const QString& type) { - if(type == "bad-request") - setCondition(BadRequest); - else if(type == "conflict") - setCondition(Conflict); - else if(type == "feature-not-implemented") - setCondition(FeatureNotImplemented); - else if(type == "forbidden") - setCondition(Forbidden); - else if(type == "gone") - setCondition(Gone); - else if(type == "internal-server-error") - setCondition(InternalServerError); - else if(type == "item-not-found") - setCondition(ItemNotFound); - else if(type == "jid-malformed") - setCondition(JidMalformed); - else if(type == "not-acceptable") - setCondition(NotAcceptable); - else if(type == "not-allowed") - setCondition(NotAllowed); - else if(type == "not-authorized") - setCondition(NotAuthorized); - else if(type == "payment-required") - setCondition(PaymentRequired); - else if(type == "recipient-unavailable") - setCondition(RecipientUnavailable); - else if(type == "redirect") - setCondition(Redirect); - else if(type == "registration-required") - setCondition(RegistrationRequired); - else if(type == "remote-server-not-found") - setCondition(RemoteServerNotFound); - else if(type == "remote-server-timeout") - setCondition(RemoteServerTimeout); - else if(type == "resource-constraint") - setCondition(ResourceConstraint); - else if(type == "service-unavailable") - setCondition(ServiceUnavailable); - else if(type == "subscription-required") - setCondition(SubscriptionRequired); - else if(type == "undefined-condition") - setCondition(UndefinedCondition); - else if(type == "unexpected-request") - setCondition(UnexpectedRequest); - else - setCondition(static_cast<QXmppStanza::Error::Condition>(-1)); + setCondition(conditionFromStr(type)); } void QXmppStanza::Error::parse(const QDomElement &errorElement) @@ -578,6 +486,14 @@ void QXmppStanza::setExtendedAddresses(const QList<QXmppExtendedAddress> &addres d->extendedAddresses = addresses; } +/// Indicates if the QXmppStanza is a stanza in the XMPP sence (i. e. a message, +/// iq or presence) + +bool QXmppStanza::isXmppStanza() const +{ + return false; +} + /// \cond void QXmppStanza::generateAndSetNextId() { |
