23 #ifdef MCLIENTLIB_EXPORTS
24 #define MCLIENTLIB_API __declspec(dllexport)
26 #define MCLIENTLIB_API __declspec(dllimport)
30 #ifndef MCLIENTLIB_EXPORTS
32 #define MCLIENTLIB_API
34 #define MCLIENTLIB_API
37 #define MCLIENTLIB_API
45 #pragma warning(disable: 4251)
54 namespace MClientLib {
74 virtual std::string getHostName()
const ;
75 virtual void setHostName(
const std::string& _hostName);
76 virtual std::string getHostIp()
const;
77 virtual void setHostIp(
const std::string& _hostIp);
78 virtual MPool* getParent();
79 virtual void setParent(
MPool* parent);
81 static std::vector<MPoolItem> Unmarshall(
const std::string& items);
82 static std::string Marshall(
const std::vector<MPoolItem>& childs);
96 bool hasNodesPriority;
98 std::string autoPoolIpFilter;
99 std::string autoPoolHostnameFilter;
100 std::vector<MPoolItem> childs;
101 std::vector<MClientLib::MTimeRule> timeRules;
110 virtual std::vector<MClientLib::MPoolItem>* getInnerNodesContainer();
111 virtual void setNodes(std::vector<MClientLib::MPoolItem>);
112 virtual std::vector<MClientLib::MPoolItem> getNodes();
114 virtual std::vector<MClientLib::MTimeRule> getTimeRules();
115 virtual void setTimeRules(std::vector<MClientLib::MTimeRule>);
117 virtual long getId();
118 virtual void setId(
long _id);
119 virtual std::string getName();
120 virtual void setName(
const std::string& _name);
121 virtual int getNodesPriority();
122 virtual void setNodesPriority(
int _nodesPriority);
123 virtual int getJobsPriority();
124 virtual void setJobsPriority(
int _jobsPriority);
125 virtual bool getHasNodesPriority();
126 virtual void setHasNodesPriority(
bool _hasNodesPriority);
127 virtual bool getHasJobsPriority();
128 virtual void setHasJobsPriority(
bool _hasJobsPriority);
129 virtual std::string getAutoPoolIpFilter();
130 virtual void setAutoPoolIpFilter(
const std::string& _autoPoolIpFilter);
131 virtual std::string getAutoPoolHostnameFilter();
132 virtual void setAutoPoolHostnameFilter(
const std::string& _autoPoolHostnameFilter);
134 virtual bool containsNode(
const std::string& hostName,
const std::string& hostIp);
135 virtual bool containsNodeName(
const std::string& hostName);
136 virtual bool containsNodeIp(
const std::string& hostIp);
138 virtual bool removeNode(
const std::string& hostName,
const std::string& hostIp);
139 virtual void addNode(
const std::string& hostName,
const std::string& hostIp);
140 virtual int indexOfNode(
const std::string& hostName,
const std::string& hostIp);
142 virtual bool removeNodeAtIndex(
int index);
143 virtual int getNodesCount();
148 virtual bool removeTimeRuleAtIndex(
int index);
149 virtual int getTimeRulesCount();
151 virtual bool Unmarshall(
const std::vector<std::string>& items);
152 virtual const std::string Marshall();
154 void castedRelease();
163 std::vector<MPool*> pools;
164 std::map<std::string,MPool*> poolsNames;
169 virtual std::vector<MPool*>* getInnerPoolsContainer();
174 virtual std::vector<std::string> groupOf(
const std::string& hostName,
const std::string& ipAddress);
176 virtual bool containsNode(
const std::string& poolName,
const std::string& hostName,
const std::string& hostIp);
177 virtual bool containsNodeName(
const std::string& poolName,
const std::string& hostName);
178 virtual bool containsNodeIp(
const std::string& poolName,
const std::string& hostIp);
180 virtual bool removeNode(
const std::string& poolName,
const std::string& hostName,
const std::string& hostIp);
181 virtual void addNode(
const std::string& poolName,
const std::string& hostName,
const std::string& hostIp);
183 virtual void addPool(
const std::string& poolName);
184 virtual bool removePool(
const std::string& poolName);
185 virtual bool containsPool(
const std::string& poolName);
186 virtual int indexOfPool(
const std::string& poolName);
187 virtual MPool* getPool(
const std::string& pool);
189 virtual void addPool(
MPool* pool);
190 virtual bool removePool(
MPool* pool);
191 virtual int indexOfPool(
MPool* pool);
192 virtual bool updatePool(
MPool* pool);
193 virtual bool renamePool(
MPool* pool,
const std::string& newName);
195 virtual std::vector<MPool> getPools();
196 virtual void clear();
198 virtual int getPoolsCount();