]> git.stg.codes - stg.git/blobdiff - stargazer/plugins/configuration/rpcconfig/info_methods.h
Port to CMake, get rid of os_int.h.
[stg.git] / stargazer / plugins / configuration / rpcconfig / info_methods.h
diff --git a/stargazer/plugins/configuration/rpcconfig/info_methods.h b/stargazer/plugins/configuration/rpcconfig/info_methods.h
new file mode 100644 (file)
index 0000000..f781b9b
--- /dev/null
@@ -0,0 +1,80 @@
+#ifndef __INFO_METHODS_H__
+#define __INFO_METHODS_H__
+
+#include <string>
+#include <vector>
+
+#include <xmlrpc-c/base.hpp>
+#include <xmlrpc-c/registry.hpp>
+
+#include "stg/users.h"
+#include "stg/tariffs.h"
+
+// Forward declaration
+class RPC_CONFIG;
+class SETTINGS;
+
+class METHOD_INFO : public xmlrpc_c::method
+{
+public:
+    METHOD_INFO(TARIFFS * t,
+                USERS * u,
+                size_t df,
+                const std::vector<std::string> & dn)
+        : tariffs(t),
+          users(u),
+          dayFee(df),
+          dirNames(dn)
+    {
+    }
+
+    void execute(xmlrpc_c::paramList const & paramList,
+                 xmlrpc_c::value *   const   retvalP);
+
+private:
+    METHOD_INFO(const METHOD_INFO & rvalue);
+    METHOD_INFO & operator=(const METHOD_INFO & rvalue);
+
+    TARIFFS * tariffs;
+    USERS * users;
+    size_t dayFee;
+    const std::vector<std::string> & dirNames;
+};
+
+class METHOD_LOGIN : public xmlrpc_c::method
+{
+public:
+    explicit METHOD_LOGIN(RPC_CONFIG * c)
+        : config(c)
+    {
+    }
+
+    void execute(xmlrpc_c::paramList const & paramList,
+                 xmlrpc_c::value *   const   retvalP);
+
+private:
+    METHOD_LOGIN(const METHOD_LOGIN & rvalue);
+    METHOD_LOGIN & operator=(const METHOD_LOGIN & rvalue);
+
+    RPC_CONFIG * config;
+};
+
+class METHOD_LOGOUT : public xmlrpc_c::method
+{
+public:
+    explicit METHOD_LOGOUT(RPC_CONFIG * c)
+        : config(c)
+    {
+    }
+
+    void execute(xmlrpc_c::paramList const & paramList,
+                 xmlrpc_c::value *   const   retvalP);
+
+private:
+    METHOD_LOGOUT(const METHOD_LOGOUT & rvalue);
+    METHOD_LOGOUT & operator=(const METHOD_LOGOUT & rvalue);
+
+    RPC_CONFIG * config;
+};
+
+#endif