#ifndef CLOUDSERVER_H
#define CLOUDSERVER_H

#include "dispatcherclient.h"


class CloudServer : public PIObject {
	PIOBJECT(CloudServer)
public:
	CloudServer(DispatcherClient * c, const PIByteArray & sname);
	~CloudServer();
	PIByteArray serverUUID() const;
	void addClient(DispatcherClient * c);
	void removeClient(DispatcherClient * c);
	PIVector<DispatcherClient*> getClients();
	EVENT_HANDLER0(void, printStatus);
	const DispatcherClient * getConnection() const {return server;}

private:
	DispatcherClient * server;
	PIVector<DispatcherClient*> clients;
	PIMap<uint, DispatcherClient*> index_clients;
	PIByteArray server_uuid;
};

#endif // CLOUDSERVER_H
