]> git.stg.codes - stg.git/blobdiff - projects/stargazer/plugins/configuration/rpcconfig/info_methods.h
Use std::lock_guard instead of STG_LOCKER.
[stg.git] / projects / stargazer / plugins / configuration / rpcconfig / info_methods.h
index 37bbb40d81c815425dfcdf34398d0af33f860814..10f484d1d8d9b906a0eae6ed59c97f0cdfe95831 100644 (file)
@@ -1,12 +1,19 @@
-#ifndef __INFO_METHODS_H__
-#define __INFO_METHODS_H__
+#pragma once
 
 #include <xmlrpc-c/base.hpp>
 #include <xmlrpc-c/registry.hpp>
 
-#include "../../../users.h"
-#include "../../../tariffs.h"
-#include "../../../settings.h"
+#include <string>
+#include <vector>
+
+namespace STG
+{
+
+struct Settings;
+class Users;
+class Tariffs;
+
+}
 
 // Forward declaration
 class RPC_CONFIG;
@@ -14,49 +21,62 @@ class RPC_CONFIG;
 class METHOD_INFO : public xmlrpc_c::method
 {
 public:
-    METHOD_INFO(TARIFFS * t,
-                USERS * u,
-                const SETTINGS * s)
+    METHOD_INFO(STG::Tariffs * t,
+                STG::Users * u,
+                size_t df,
+                const std::vector<std::string> & dn)
         : tariffs(t),
           users(u),
-          settings(s)
+          dayFee(df),
+          dirNames(dn)
     {
     }
 
     void execute(xmlrpc_c::paramList const & paramList,
                  xmlrpc_c::value *   const   retvalP);
+
 private:
-    TARIFFS * tariffs;
-    USERS * users;
-    const SETTINGS * settings;
+    METHOD_INFO(const METHOD_INFO & rvalue);
+    METHOD_INFO & operator=(const METHOD_INFO & rvalue);
+
+    STG::Tariffs * tariffs;
+    STG::Users * users;
+    size_t dayFee;
+    const std::vector<std::string> & dirNames;
 };
 
 class METHOD_LOGIN : public xmlrpc_c::method
 {
 public:
-    METHOD_LOGIN(RPC_CONFIG * c)
+    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:
-    METHOD_LOGOUT(RPC_CONFIG * c)
+    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