1 #ifndef __ARC_ENTITYRETRIEVERPLUGIN_H__ 
    2 #define __ARC_ENTITYRETRIEVERPLUGIN_H__ 
   13 #include <arc/UserConfig.h> 
   14 #include <arc/compute/Endpoint.h> 
   15 #include <arc/compute/EndpointQueryingStatus.h> 
   16 #include <arc/compute/ExecutionTarget.h> 
   17 #include <arc/loader/Loader.h> 
   18 #include <arc/loader/FinderLoader.h> 
   32   EndpointQueryOptions(
const std::set<std::string>& preferredInterfaceNames = std::set<std::string>()) : preferredInterfaceNames(preferredInterfaceNames) {}
 
   34   const std::set<std::string>& getPreferredInterfaceNames()
 const { 
return preferredInterfaceNames; }
 
   36   std::set<std::string> preferredInterfaceNames;
 
   54                        const std::list<std::string>& capabilityFilter = std::list<std::string>(),
 
   55                        const std::list<std::string>& rejectedServices = std::list<std::string>(),
 
   56                        const std::set<std::string>& preferredInterfaceNames = std::set<std::string>() )
 
   57     : recursive(recursive), capabilityFilter(capabilityFilter), rejectedServices(rejectedServices),
 
   58       preferredInterfaceNames(preferredInterfaceNames) {}
 
   60   bool recursiveEnabled()
 const { 
return recursive; }
 
   61   const std::list<std::string>& getCapabilityFilter()
 const { 
return capabilityFilter; }
 
   62   const std::list<std::string>& getRejectedServices()
 const { 
return rejectedServices; }
 
   63   const std::set<std::string>& getPreferredInterfaceNames()
 const { 
return preferredInterfaceNames; }
 
   67   std::list<std::string> capabilityFilter;
 
   68   std::list<std::string> rejectedServices;
 
   69   std::set<std::string> preferredInterfaceNames;
 
   81   virtual const std::list<std::string>& SupportedInterfaces()
 const { 
return supportedInterfaces; };
 
   82   virtual bool isEndpointNotSupported(
const Endpoint&) 
const = 0;
 
   85   static const std::string kind;
 
   88   std::list<std::string> supportedInterfaces;
 
  102   static std::list<std::string> getListOfPlugins();
 
  103   const std::map<std::string, EntityRetrieverPlugin<T> *>& GetTargetInformationRetrieverPlugins()
 const { 
return plugins; }
 
  106   std::map<std::string, EntityRetrieverPlugin<T> *> plugins;
 
  161 #endif // __ARC_ENTITYRETRIEVERPLUGIN_H__