]> git.stg.codes - stg.git/blobdiff - include/stg/services.h
Fix email.
[stg.git] / include / stg / services.h
index 2f1eec717f74c9ab53ed2750566f52a5fb33b576..87ed1f2d51dbb1cee2d4e620cd2b4bb2b1bb4953 100644 (file)
  */
 
 /*
- *    Author : Maxim Mamontov <faust@stargazer.dp.ua>
+ *    Author : Maksym Mamontov <stg@madf.info>
  */
 
 #ifndef SERVICES_H
 #define SERVICES_H
 
+#include "service_conf.h"
+
 #include <string>
 
-#include "service_conf.h"
+class ADMIN;
 
 class SERVICES {
 public:
-    virtual int Add(const SERVICE_CONF & service) = 0;
-    virtual int Del(const std::string & name) = 0;
-    virtual int Change(const SERVICE_CONF & service) = 0;
-    virtual bool FindService(const std::string & name, SERVICE_CONF & service) = 0;
-    virtual bool ServiceExists(const std::string & name) const = 0;
+    virtual ~SERVICES() {}
+    virtual int Add(const SERVICE_CONF & service, const ADMIN * admin) = 0;
+    virtual int Del(const std::string & name, const ADMIN * admin) = 0;
+    virtual int Change(const SERVICE_CONF & service, const ADMIN * admin) = 0;
+    virtual bool Find(const std::string & name, SERVICE_CONF * service) const = 0;
+    virtual bool Find(const std::string & name, SERVICE_CONF_RES * service) const = 0;
+    virtual bool Exists(const std::string & name) const = 0;
     virtual const std::string & GetStrError() const = 0;
+    virtual size_t Count() const = 0;
 
     virtual int OpenSearch() const = 0;
     virtual int SearchNext(int, SERVICE_CONF * service) const = 0;