diff options
Diffstat (limited to 'Swiften/Elements/IQ.cpp')
| -rw-r--r-- | Swiften/Elements/IQ.cpp | 37 | 
1 files changed, 37 insertions, 0 deletions
diff --git a/Swiften/Elements/IQ.cpp b/Swiften/Elements/IQ.cpp new file mode 100644 index 0000000..53dec53 --- /dev/null +++ b/Swiften/Elements/IQ.cpp @@ -0,0 +1,37 @@ +#include "Swiften/Elements/IQ.h" + +namespace Swift { + +boost::shared_ptr<IQ> IQ::createRequest( +		Type type, const JID& to, const String& id, boost::shared_ptr<Payload> payload) { +	boost::shared_ptr<IQ> iq(new IQ(type)); +	if (to.isValid()) { +		iq->setTo(to); +	} +	iq->setID(id); +	if (payload) { +		iq->addPayload(payload); +	} +	return iq; +} + +boost::shared_ptr<IQ> IQ::createResult( +		const JID& to, const String& id, boost::shared_ptr<Payload> payload) { +	boost::shared_ptr<IQ> iq(new IQ(Result)); +	iq->setTo(to); +	iq->setID(id); +	if (payload) { +		iq->addPayload(payload); +	} +	return iq; +} + +boost::shared_ptr<IQ> IQ::createError(const JID& to, const String& id, ErrorPayload::Condition condition, ErrorPayload::Type type) { +	boost::shared_ptr<IQ> iq(new IQ(IQ::Error)); +	iq->setTo(to); +	iq->setID(id); +	iq->addPayload(boost::shared_ptr<Swift::ErrorPayload>(new Swift::ErrorPayload(condition, type))); +	return iq; +} + +}  | 
 Swift