Main Page | Modules | Class Hierarchy | Class List | File List | Class Members | File Members

Notification.h

Go to the documentation of this file.
00001 #ifndef __EDG_WORKLOAD_LOGGING_CLIENT_NOTIFICATION_HPP__
00002 #define __EDG_WORKLOAD_LOGGING_CLIENT_NOTIFICATION_HPP__
00003 
00004 
00005 #include "glite/wmsutils/jobid/JobId.h"
00006 
00007 #include "glite/lb/consumer.h"
00008 #include "glite/lb/notification.h"
00009 #include "glite/lb/JobStatus.h"
00010 
00011 
00012 EWL_BEGIN_NAMESPACE
00013 
00014 
00019 class Notification {
00020 public:
00024         Notification();
00025 
00031         Notification(const std::string host,const u_int16_t port);
00032 
00037         Notification(const std::string notifId);
00038 
00039         ~Notification();
00040 
00041         std::string getNotifId() const; 
00042         time_t getValid() const;        
00043         int getFd() const;              
00050         void addJob(const glite::wmsutils::jobid::JobId &jobId); 
00051 
00055         void removeJob(const glite::wmsutils::jobid::JobId &jobId);
00056 
00058         std::string getJobs();
00059 
00061         void setStates(const std::vector<glite::lb::JobStatus::Code> &);
00062 
00064         std::string getStates();
00065 
00069         void Register();
00070 
00075         void Bind(const std::string address);
00076 
00082         int receive(glite::lb::JobStatus &,timeval &);
00083 
00084 private:
00085         std::vector<glite::wmsutils::jobid::JobId>      jobs;
00086         std::vector<glite::lb::JobStatus::Code> states;
00087 
00088         edg_wll_Context ctx;
00089         edg_wll_NotifId notifId;
00090         time_t          valid;
00091 };
00092 
00093 
00094 EWL_END_NAMESPACE
00095 
00096 #endif

Generated on Mon May 5 15:16:52 2008 for Glite LB Client: CPP - Interface by  doxygen 1.3.9.1