#ifndef __ARC_TESTACCCONTROL_H__ #define __ARC_TESTACCCONTROL_H__ /** \file * \brief Classes for controlling output of compute test plugins. */ #include #include #include #include #include #include #include #include #include #include namespace Arc { /** * \defgroup testacccontrol Classes for controlling output of compute test plugins * The listed classes are used for controlling the behaviour of the test * plugins. A test plugin can be used for simulating, testing and checking how * the compute library behaves and react to different inputs from plugins. Also * the test plugins doesn't require a network connection in order to function. * * Compute test plugins are available for the following plugin types: * \li BrokerPlugin * \li JobControllerPlugin * \li JobDescriptionParserPlugin * \li SubmitterPlugin * \li ServiceEndpointRetrieverPlugin * \li TargetInformationRetrieverPlugin * \li JobListRetrieverPlugin * * They can be loaded by using the associated plugin loader class. * * \ingroup compute */ /** * \ingroup testacccontrol * \headerfile TestACCControl.h arc/compute/TestACCControl.h */ class BrokerPluginTestACCControl { public: static bool match; static bool less; }; /** * \ingroup testacccontrol * \headerfile TestACCControl.h arc/compute/TestACCControl.h */ class JobDescriptionParserPluginTestACCControl { public: static bool parseStatus; static bool unparseStatus; static std::list parsedJobDescriptions; static std::string unparsedString; }; /** * \ingroup testacccontrol * \headerfile TestACCControl.h arc/compute/TestACCControl.h */ class JobControllerPluginTestACCControl { public: static bool cleanStatus; static bool cancelStatus; static bool renewStatus; static bool resumeStatus; static bool getJobDescriptionStatus; static std::string getJobDescriptionString; static bool resourceExist; static URL resourceURL; static URL createURL; }; /** * \ingroup testacccontrol * \headerfile TestACCControl.h arc/compute/TestACCControl.h */ class SubmitterPluginTestACCControl { public: static SubmissionStatus submitStatus; static bool migrateStatus; static bool modifyStatus; static Job submitJob; static Job migrateJob; }; /** * \ingroup testacccontrol * \headerfile TestACCControl.h arc/compute/TestACCControl.h */ class JobStateTEST : public JobState { public: JobStateTEST(JobState::StateType type_, const std::string& state_ = "TestState") { type = type_; state = state_; } }; /** * \ingroup testacccontrol * \headerfile TestACCControl.h arc/compute/TestACCControl.h */ class JobListRetrieverPluginTESTControl { public: static float delay; static std::list jobs; static EndpointQueryingStatus status; }; /** * \ingroup testacccontrol * \headerfile TestACCControl.h arc/compute/TestACCControl.h */ class ServiceEndpointRetrieverPluginTESTControl { public: static std::list condition; static std::list status; static std::list< std::list > endpoints; }; /** * \ingroup testacccontrol * \headerfile TestACCControl.h arc/compute/TestACCControl.h */ class TargetInformationRetrieverPluginTESTControl { public: static float delay; static std::list targets; static EndpointQueryingStatus status; }; } #endif // __ARC_TESTACCCONTROL_H__