diff options
Diffstat (limited to 'Swiften/JID/JID.h')
-rw-r--r-- | Swiften/JID/JID.h | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/Swiften/JID/JID.h b/Swiften/JID/JID.h index 08309d3..798860d 100644 --- a/Swiften/JID/JID.h +++ b/Swiften/JID/JID.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010 Remko Tronçon + * Copyright (c) 2010-2013 Remko Tronçon * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ @@ -7,12 +7,14 @@ #pragma once #include <string> -//#include <iosfwd> -#include <iostream> +#include <iosfwd> #include <Swiften/Base/API.h> + namespace Swift { + class IDNConverter; + /** * This represents the JID used in XMPP * (RFC6120 - http://tools.ietf.org/html/rfc6120 ). @@ -146,10 +148,7 @@ namespace Swift { return compare(b, Swift::JID::WithResource) < 0; } - friend std::ostream& operator<<(std::ostream& os, const Swift::JID& j) { - os << j.toString(); - return os; - } + SWIFTEN_API friend std::ostream& operator<<(std::ostream& os, const Swift::JID& j); friend bool operator==(const Swift::JID& a, const Swift::JID& b) { return a.compare(b, Swift::JID::WithResource) == 0; @@ -159,6 +158,14 @@ namespace Swift { return a.compare(b, Swift::JID::WithResource) != 0; } + + /** + * If Swiften was compiled with SWIFTEN_JID_NO_DEFAULT_IDN_CONVERTER (not default), use this method at + * the beginning of the program to set an IDN converter to use for JID IDN conversions. + * By default, this method shouldn't be used. + */ + static void setIDNConverter(IDNConverter*); + private: void nameprepAndSetComponents(const std::string& node, const std::string& domain, const std::string& resource); void initializeFromString(const std::string&); @@ -170,4 +177,7 @@ namespace Swift { bool hasResource_; std::string resource_; }; + + SWIFTEN_API std::ostream& operator<<(std::ostream& os, const Swift::JID& j); } + |