NCBI C++ ToolKit
nst_automation.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 /* $Id: nst_automation.hpp 80895 2018-01-19 16:46:14Z sadyrovr $
2  * ===========================================================================
3  *
4  * PUBLIC DOMAIN NOTICE
5  * National Center for Biotechnology Information
6  *
7  * This software/database is a "United States Government Work" under the
8  * terms of the United States Copyright Act. It was written as part of
9  * the author's official duties as a United States Government employee and
10  * thus cannot be copyrighted. This software/database is freely available
11  * to the public for use. The National Library of Medicine and the U.S.
12  * Government have not placed any restriction on its use or reproduction.
13  *
14  * Although all reasonable efforts have been taken to ensure the accuracy
15  * and reliability of the software and data, the NLM and the U.S.
16  * Government do not and cannot warrant the performance or results that
17  * may be obtained by using this software or data. The NLM and the U.S.
18  * Government disclaim all warranties, express or implied, including
19  * warranties of performance, merchantability or fitness for any particular
20  * purpose.
21  *
22  * Please cite the author in any work or product based on this material.
23  *
24  * ===========================================================================
25  *
26  * Authors: Rafael Sadyrov
27  *
28  * File Description: Automation processor - NetStorage declarations.
29  *
30  */
31 
32 #ifndef NST_AUTOMATION__HPP
33 #define NST_AUTOMATION__HPP
34 
35 #include "automation.hpp"
36 
38 
39 namespace NAutomation
40 {
41 
43 {
45 
46  virtual const string& GetType() const { return kName; }
47 
49 
50  void ExecClientsInfo(const TArguments& args, SInputOutput& io);
51  void ExecUsersInfo(const TArguments& args, SInputOutput& io);
52  void ExecClientObjects(const TArguments& args, SInputOutput& io);
53  void ExecUserObjects(const TArguments& args, SInputOutput& io);
54  void ExecServerInfo(const TArguments& args, SInputOutput& io);
55  void ExecOpenObject(const TArguments& args, SInputOutput& io);
56  void ExecGetServers(const TArguments& args, SInputOutput& io);
57 
58  static CCommand CallCommand();
59  static TCommands CallCommands();
60  static CCommand NewCommand();
61  static CAutomationObject* Create(const TArguments& args, CAutomationProc* automation_proc);
62 
63  static const string kName;
64 
65 protected:
66  void ExecRequest(const string& request_type, SInputOutput& io);
67 
69 
70  SNetStorageService(CAutomationProc* automation_proc,
71  CNetStorageAdmin nst_api);
72 };
73 
75 {
77 
78  SNetStorageServer(CAutomationProc* automation_proc,
79  CNetStorageAdmin nst_api, CNetServer::TInstance server);
80 
81  virtual const string& GetType() const { return kName; }
82 
83  void ExecHealth(const TArguments& args, SInputOutput& io);
84  void ExecConf(const TArguments& args, SInputOutput& io);
85  void ExecMetadataInfo(const TArguments& args, SInputOutput& io);
86  void ExecReconf(const TArguments& args, SInputOutput& io);
87  void ExecAckAlert(const TArguments& args, SInputOutput& io);
88 
89  static CCommand CallCommand();
90  static TCommands CallCommands();
91  static CCommand NewCommand();
92  static CAutomationObject* Create(const TArguments& args, CAutomationProc* automation_proc);
93 
94  static const string kName;
95 };
96 
98 {
100 
101  SNetStorageObject(CAutomationProc* automation_proc,
103 
104  virtual const string& GetType() const override { return kName; }
105 
106  void ExecInfo(const TArguments& args, SInputOutput& io);
107  void ExecAttrList(const TArguments& args, SInputOutput& io);
108  void ExecGetAttr(const TArguments& args, SInputOutput& io);
109 
110  static CCommand CallCommand();
111  static TCommands CallCommands();
112 
113  static const string kName;
114 
115 private:
117 };
118 
119 }
120 
122 
123 #endif // NST_AUTOMATION__HPP
CNetService GetService()
Basic network-based data object I/O.
Definition: netstorage.hpp:167
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
vector< CCommand > TCommands
Definition: automation.hpp:134
void ExecInfo(const TArguments &args, SInputOutput &io)
void ExecAttrList(const TArguments &args, SInputOutput &io)
virtual const string & GetType() const override
SNetStorageObject(CAutomationProc *automation_proc, CNetStorageObject::TInstance object)
void ExecGetAttr(const TArguments &args, SInputOutput &io)
static CAutomationObject * Create(const TArguments &args, CAutomationProc *automation_proc)
void ExecMetadataInfo(const TArguments &args, SInputOutput &io)
void ExecReconf(const TArguments &args, SInputOutput &io)
void ExecConf(const TArguments &args, SInputOutput &io)
virtual const string & GetType() const
SNetStorageServer(CAutomationProc *automation_proc, CNetStorageAdmin nst_api, CNetServer::TInstance server)
void ExecAckAlert(const TArguments &args, SInputOutput &io)
void ExecHealth(const TArguments &args, SInputOutput &io)
void ExecClientObjects(const TArguments &args, SInputOutput &io)
void ExecUsersInfo(const TArguments &args, SInputOutput &io)
virtual const string & GetType() const
void ExecRequest(const string &request_type, SInputOutput &io)
void ExecOpenObject(const TArguments &args, SInputOutput &io)
void ExecGetServers(const TArguments &args, SInputOutput &io)
void ExecUserObjects(const TArguments &args, SInputOutput &io)
static CAutomationObject * Create(const TArguments &args, CAutomationProc *automation_proc)
void ExecServerInfo(const TArguments &args, SInputOutput &io)
SNetStorageService(CAutomationProc *automation_proc, CNetStorageAdmin nst_api)
void ExecClientsInfo(const TArguments &args, SInputOutput &io)
Modified on Wed May 29 18:38:12 2024 by modify_doxy.py rev. 669887