3 #ifndef __ARC_SUBMITTERPLUGIN_H__ 4 #define __ARC_SUBMITTERPLUGIN_H__ 15 #include <arc/loader/Loader.h> 16 #include <arc/loader/Plugin.h> 17 #include <arc/compute/EntityRetriever.h> 18 #include <arc/compute/Job.h> 19 #include <arc/compute/JobDescription.h> 20 #include <arc/compute/SubmissionStatus.h> 21 #include <arc/data/DataHandle.h> 31 class ExecutionTarget;
76 std::list<const JobDescription*>& notSubmitted) = 0;
78 const std::string& endpoint,
80 std::list<const JobDescription*>& notSubmitted);
97 bool forcemigration,
Job& job);
99 virtual const std::list<std::string>& SupportedInterfaces()
const {
return supportedInterfaces; };
107 bool PutFiles(
const JobDescription& jobdesc,
const URL& url)
const;
108 void AddJobDetails(
const JobDescription& jobdesc, Job& job)
const;
116 std::list<std::string> supportedInterfaces;
151 void initialiseInterfacePluginMap(
const UserConfig& uc);
152 const std::map<std::string, std::string>& getInterfacePluginMap()
const {
return interfacePluginMap; }
155 std::multimap<std::string, SubmitterPlugin*> submitters;
156 static std::map<std::string, std::string> interfacePluginMap;
164 :
public PluginArgument {
167 : usercfg(usercfg) {}
178 #endif // __ARC_SUBMITTERPLUGIN_H__ Arc namespace contains all core ARC classes.
Definition: ArcConfig.h:11
SubmitterPlugin * load(const std::string &name, const UserConfig &usercfg)
User configuration class
Definition: UserConfig.h:196
This class is a wrapper around the DataPoint class.
Definition: DataHandle.h:33
virtual bool Migrate(const std::string &jobid, const JobDescription &jobdesc, const ExecutionTarget &et, bool forcemigration, Job &job)
Migrate job.
Definition: SubmitterPlugin.h:163
A logger class.
Definition: Logger.h:493
Job.
Definition: Job.h:33
Definition: SubmissionStatus.h:12
const UserConfig * usercfg
Definition: SubmitterPlugin.h:115
Definition: JobDescription.h:842
virtual SubmissionStatus Submit(const JobDescription &j, const ExecutionTarget &et, EntityConsumer< Job > &jc)
Submit a single job description.
Definition: SubmitterPlugin.h:62
Base class for the SubmitterPlugins.
Definition: SubmitterPlugin.h:45
ExecutionTarget.
Definition: ExecutionTarget.h:494
Definition: SubmitterPlugin.h:129
virtual void SetUserConfig(const UserConfig &uc)