00001 /* 00002 * Copyright (c) 2010 Remko Tronçon 00003 * Licensed under the GNU General Public License v3. 00004 * See Documentation/Licenses/GPLv3.txt for more information. 00005 */ 00006 00007 #pragma once 00008 00009 #include <Swiften/Queries/GenericRequest.h> 00010 #include <Swiften/Elements/SoftwareVersion.h> 00011 #include <boost/smart_ptr/make_shared.hpp> 00012 00013 00014 namespace Swift { 00015 class GetSoftwareVersionRequest : public GenericRequest<SoftwareVersion> { 00016 public: 00017 typedef boost::shared_ptr<GetSoftwareVersionRequest> ref; 00018 00019 static ref create(const JID& recipient, IQRouter* router) { 00020 return ref(new GetSoftwareVersionRequest(recipient, router)); 00021 } 00022 00023 private: 00024 GetSoftwareVersionRequest( 00025 const JID& recipient, 00026 IQRouter* router) : 00027 GenericRequest<SoftwareVersion>( 00028 IQ::Get, recipient, boost::make_shared<SoftwareVersion>(), router) { 00029 } 00030 }; 00031 }