diff options
| author | Remko Tronçon <git@el-tramo.be> | 2011-04-02 20:46:42 (GMT) | 
|---|---|---|
| committer | Remko Tronçon <git@el-tramo.be> | 2011-04-18 19:11:41 (GMT) | 
| commit | 40587e704a2a8dfe7d29cc2e28e140f01c9f86bc (patch) | |
| tree | 1e7b339e6d4038c34e033088469f244ff971f496 /SwifTools/URIHandler/XMPPURI.h | |
| parent | e3d2137622cea23298f203801bc698eff08e0ea1 (diff) | |
| download | swift-contrib-40587e704a2a8dfe7d29cc2e28e140f01c9f86bc.zip swift-contrib-40587e704a2a8dfe7d29cc2e28e140f01c9f86bc.tar.bz2 | |
Added RFC5122 XMPP URI parsing and basic handling.
URI Handling currently only works on Mac OS X.
Diffstat (limited to 'SwifTools/URIHandler/XMPPURI.h')
| -rw-r--r-- | SwifTools/URIHandler/XMPPURI.h | 72 | 
1 files changed, 72 insertions, 0 deletions
| diff --git a/SwifTools/URIHandler/XMPPURI.h b/SwifTools/URIHandler/XMPPURI.h new file mode 100644 index 0000000..266b79b --- /dev/null +++ b/SwifTools/URIHandler/XMPPURI.h @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2011 Remko Tronçon + * Licensed under the GNU General Public License v3. + * See Documentation/Licenses/GPLv3.txt for more information. + */ + +#pragma once + +#include <string> +#include <map> + +#include <Swiften/JID/JID.h> + +namespace Swift { +	class XMPPURI { +		public: +			XMPPURI(); + +			const JID& getAuthority() const { +				return authority; +			} + +			void setAuthority(const JID& j) { +				authority = j; +			} + +			const JID& getPath() const { +				return path; +			} + +			void setPath(const JID& j) { +				path = j; +			} + +			const std::string& getQueryType() const { +				return queryType; +			} + +			void setQueryType(const std::string& q) { +				queryType = q; +			} + +			const std::map<std::string, std::string>& getQueryParameters() const { +				return queryParameters; +			} + +			void addQueryParameter(const std::string& key, const std::string& path) { +				queryParameters[key] = path; +			} + +			const std::string& getFragment() const { +				return fragment; +			} + +			void setFragment(const std::string& f) { +				fragment = f; +			} + +			bool isNull() const { +				return !authority.isValid() && !path.isValid(); +			} + +			static XMPPURI fromString(const std::string&); + +		private: +			JID authority; +			JID path; +			std::string fragment; +			std::string queryType; +			std::map<std::string, std::string> queryParameters; +	}; +} | 
 Swift
 Swift