Main Page | Class Hierarchy | Class List | File List | Class Members | Related Pages

Consumer.h

00001 /*
00002  *  Copyright (c) 2004 on behalf of the EU EGEE Project:
00003  *  The European Organization for Nuclear Research (CERN),
00004  *  Istituto Nazionale di Fisica Nucleare (INFN), Italy
00005  *  Datamat Spa, Italy
00006  *  Centre National de la Recherche Scientifique (CNRS), France
00007  *  CS Systeme d'Information (CSSI), France
00008  *  Royal Institute of Technology, Center for Parallel Computers (KTH-PDC), Sweden
00009  *  Universiteit van Amsterdam (UvA), Netherlands
00010  *  University of Helsinki (UH.HIP), Finland
00011  *  University of Bergen (UiB), Norway
00012  *  Council for the Central Laboratory of the Research Councils (CCLRC), United Kingdom
00013  */
00014 #ifndef CONSUMER_H
00015 #define CONSUMER_H
00016 
00017 #include "rgma/ResourceImpl.h"
00018 #include "rgma/ResourceEndpointList.h"
00019 #include "rgma/ResourceEndpoint.h"
00020 #include "rgma/ResultSet.h"
00021 #include "rgma/TimeInterval.h"
00022 #include "rgma/UnknownResourceException.h"
00023 #include "rgma/RemoteException.h"
00024 #include "rgma/StringList.h"
00025 
00026 namespace glite
00027 {
00028     namespace rgma
00029     {
00038         class Consumer: virtual public ResourceImpl
00039         {
00040 
00041             protected:
00042                 Consumer(){}
00043                 bool m_isExecuting;
00044                 ResourceEndpointList m_relevantProducers;
00045                 StringList m_voNames;
00046             public:
00047 
00048                 virtual ~Consumer(){}
00057                 virtual bool isExecuting() throw(UnknownResourceException, RemoteException, RGMAException) = 0;
00058 
00065                 virtual void abort() throw(UnknownResourceException, RemoteException) = 0;
00074                 virtual int count() throw(UnknownResourceException, RemoteException) = 0;
00083                 virtual bool hasAborted()throw(UnknownResourceException, RemoteException) = 0;
00096                 virtual void pop(ResultSet& results, int maxCount)throw(UnknownResourceException, RemoteException, RGMAException) = 0;
00108                 virtual void popAll(ResultSet& results)throw(UnknownResourceException, RemoteException, RGMAException) = 0;
00123                 virtual void start(TimeInterval timeout)throw(UnknownResourceException, RemoteException, RGMAException) = 0;
00138                 virtual void start(TimeInterval timeout, ResourceEndpointList producers)
00139                     throw(UnknownResourceException, RemoteException, RGMAException) = 0;
00140 
00148                 static std::string getVersion()throw(RemoteException);
00149 
00161                 static std::string getProperty(std::string name, std::string parameter)
00162                     throw(RemoteException, RGMAException);
00173                 static void setProperty(std::string name, std::string value, std::string parameter)
00174                     throw(RemoteException, RGMAException);
00175 
00186                 static std::string getProperty(std::string name)
00187                     throw(RemoteException, RGMAException);
00197                 static void setProperty(std::string name, std::string value)
00198                     throw(RemoteException, RGMAException);
00199 
00200         };
00201     }
00202 }
00203 #endif                                            // CONSUMER_H

Generated on Thu May 11 19:23:43 2006 for glite-rgma-api-cpp by doxygen 1.3.5