]> git.stg.codes - stg.git/blobdiff - projects/stargazer/plugins/configuration/rpcconfig/info_methods.h
Use std::jthread and C++17.
[stg.git] / projects / stargazer / plugins / configuration / rpcconfig / info_methods.h
index b381d16ca24e92a978eb2a5dd16cd47b37f4ac40..709a0666ad6d22b37d9e536e62adab68731a9450 100644 (file)
@@ -1,62 +1,82 @@
-#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 <string>
+#include <vector>
+
+namespace STG
+{
+
+struct Settings;
+struct Users;
+struct Tariffs;
+
+}
 
 // Forward declaration
 class RPC_CONFIG;
-class SETTINGS;
 
 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