00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef AGENTINFO_H
00022 #define AGENTINFO_H
00023
00024
00025 #include <iostream>
00026 #include <sstream>
00027 #include <string>
00028 #include <list>
00029 #include <map>
00030
00031 #include <libpq-fe.h>
00032
00033 using namespace std;
00034
00047 class AgentInfo
00048 {
00049 public:
00054 AgentInfo(){}
00055
00060 virtual ~AgentInfo(){}
00061
00062
00068 virtual list<string> getAvailableAgents() = 0;
00069
00075 virtual list<string> getInUseAgents() = 0;
00076
00082 virtual list<string> getAgents() = 0;
00083
00090 virtual void saveAgent(string aName,map<string,string> aInfo) = 0;
00091
00099 virtual void updateAgent(string aName,string aIp,string aPort,map<string,string> aInfo) = 0;
00100
00101
00102
00103
00104
00110 virtual void changeStateToAvailable(string aName) = 0;
00111
00117 virtual void changeStateToInUse(string aName) = 0;
00118
00124 virtual void changeStateToUnrcvInfo(string aName) = 0;
00125
00131 virtual void changeStateToRcvInfo(string aName) = 0;
00132
00139 virtual bool checkStateToRcvInfo(string aName) = 0;
00140
00146 virtual void deleteAgent(string aAgent) = 0;
00147
00154 virtual map<string,string> getInformations(string aAgent) = 0;
00155 };
00156 #endif