1 #ifndef __ARC_ENDPOINT_H__
2 #define __ARC_ENDPOINT_H__
10 #include <arc/compute/EndpointQueryingStatus.h>
15 class ExecutionTarget;
17 class EndpointQueryingStatus;
18 class ComputingEndpointAttributes;
24 typedef bool (*EndpointCompareFn)(
const Endpoint&,
const Endpoint&);
30 class EndpointStatusMap :
public std::map<Endpoint, EndpointQueryingStatus, EndpointCompareFn> {
33 EndpointStatusMap(EndpointCompareFn fn) : std::map<Endpoint, EndpointQueryingStatus, EndpointCompareFn>(fn) {}
67 enum CapabilityEnum { REGISTRY, COMPUTINGINFO, JOBLIST, JOBSUBMIT, JOBCREATION, JOBMANAGEMENT, UNSPECIFIED};
71 if (cap == Endpoint::REGISTRY)
return "information.discovery.registry";
72 if (cap == Endpoint::COMPUTINGINFO)
return "information.discovery.resource";
73 if (cap == Endpoint::JOBLIST)
return "information.discovery.resource";
74 if (cap == Endpoint::JOBSUBMIT)
return "executionmanagement.jobexecution";
75 if (cap == Endpoint::JOBCREATION)
return "executionmanagement.jobcreation";
76 if (cap == Endpoint::JOBMANAGEMENT)
return "executionmanagement.jobmanager";
88 const std::set<std::string>&
Capability = std::set<std::string>(),
145 std::string
str()
const;
182 static std::pair<EndpointStatusMap::const_iterator, EndpointStatusMap::const_iterator> getServiceEndpoints(
const Endpoint&,
const EndpointStatusMap&);
187 #endif // __ARC_ENDPOINT_H__