/* */ #ifndef _D_XML_RPC_METHOD_IMPL_H_ #define _D_XML_RPC_METHOD_IMPL_H_ #include "XmlRpcMethod.h" namespace aria2 { class DownloadResult; class RequestGroup; namespace xmlrpc { class AddUriXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.addUri"; return methodName; } }; class RemoveXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.remove"; return methodName; } }; #ifdef ENABLE_BITTORRENT class AddTorrentXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.addTorrent"; return methodName; } }; #endif // ENABLE_BITTORRENT #ifdef ENABLE_METALINK class AddMetalinkXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.addMetalink"; return methodName; } }; #endif // ENABLE_METALINK class PurgeDownloadResultXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.purgeDownloadResult"; return methodName; } }; class GetUrisXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.getUris"; return methodName; } }; class GetFilesXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.getFiles"; return methodName; } }; #ifdef ENABLE_BITTORRENT class GetPeersXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.getPeers"; return methodName; } }; #endif // ENABLE_BITTORRENT class TellStatusXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.tellStatus"; return methodName; } }; class TellActiveXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.tellActive"; return methodName; } }; class TellWaitingXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.tellWaiting"; return methodName; } }; class TellStoppedXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.tellStopped"; return methodName; } }; class ChangeOptionXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.changeOption"; return methodName; } }; class ChangeGlobalOptionXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.changeGlobalOption"; return methodName; } }; class GetVersionXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.getVersion"; return methodName; } }; class GetOptionXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.getOption"; return methodName; } }; class GetGlobalOptionXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.getGlobalOption"; return methodName; } }; class ChangePositionXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "aria2.changePosition"; return methodName; } }; class SystemMulticallXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); public: static const std::string& getMethodName() { static std::string methodName = "system.multicall"; return methodName; } }; class NoSuchMethodXmlRpcMethod:public XmlRpcMethod { protected: virtual BDE process(const XmlRpcRequest& req, DownloadEngine* e); }; // Helper function to store data to entryDict from ds. This function // is used by tellStatus method. void gatherStoppedDownload (BDE& entryDict, const SharedHandle& ds); // Helper function to store data to entryDict from group. This // function is used by tellStatus/tellActive/tellWaiting method void gatherProgressCommon (BDE& entryDict, const SharedHandle& group); } // namespace xmlrpc } // namespace aria2 #endif // _D_XML_RPC_METHOD_IMPL_H_