20 #ifndef GLITE_WMS_COMMON_REQUESTAD_EXPDAGAD_H
21 #define GLITE_WMS_COMMON_REQUESTAD_EXPDAGAD_H
27 #include "boost/scoped_ptr.hpp"
31 #include "glite/jobid/JobId.h"
32 #include <classad_distribution.h>
69 void flushMemory(
void);
85 typedef std::vector<classad::ExprTree*> isb_value;
124 ExpDagAd(
const std::string& jdl ) ;
132 ExpDagAd(
const classad::ClassAd &classAd);
157 std::
string jobid2node(const std::
string &jobid);
170 const std::
string &attr_name);
176 const std::
string &attr_name);
199 const std::
string &attr_name,const std::
string &attr_value);
206 const std::
string &attr_name , const std::
string &attr_value);
213 const std::
string &attr_name,
int &attr_value);
220 const std::
string &attr_name ,
int &attr_value);
227 const std::
string &attr_name,
bool &attr_value);
234 const std::
string &attr_name ,
bool &attr_value);
242 const std::
string &attr_name , const std::vector<std::
string> &attr_value);
250 const std::
string &attr_name , const std::vector<std::
string> &attr_value);
268 const std::
string &attr_name);
275 const std::
string &attr_name);
281 int getNodeInt (const glite::jobid::JobId &node,
282 const std::
string &attr_name);
289 const std::
string &attr_name);
296 const std::
string &attr_name);
303 const std::
string &attr_name);
310 const std::
string &attr_name );
314 std::vector< std::pair< std::
string , classad::ExprTree* > >
318 std::vector<std::
string>
getNodes();
328 const std::
string &attr_name );
334 const std::
string &attr_name );
371 void inherit(
const std::string& attr_name);
395 std::string
getString(
const std::string &attr_name);
399 bool getBool(
const std::string &attr_name);
411 classad::Value
getTypeValue(
const std::string& attr_name);
412 std::vector<std::string>
getStringValue(
const std::string& attr_name);
511 boost::shared_ptr<glite::jdl::DAGAd>
dagad;
516 classad::ExprTree* expression,
bool force=
false);
518 void evaluateAttribute(
const std::string& attr_name,
bool flatten=
false) ;
524 std::vector<DAGAd::node_iterator> orderNodes();
526 classad::ExprTree* EvaluateValue(classad::Value val, classad::ExprList* list );
527 void checkSandBox( std::vector < std::pair<std::string , isb_value > >& isb ,
Ad& osb_nodes );
528 void fromString (
const std::string& jdl, std::string jdl_file =
"") ;
529 void fromFile ( std::ifstream& jdl_int ) ;
532 std::map<std::string,std::string> map_nodes;
534 classad::ExprTree *defaultRank ;
535 classad::ExprTree *defaultReq ;
536 bool uiManipulation,toBretrieved ;
539 std::vector<std::string> warning_messages_v ;
void addWarning(const std::string &msg)
Provides a representation of the job description in the JDL language.
Definition: NodeAd.h:43
bool gettoBretrieved()
Definition: ExpDagAd.h:361
Ad getAttributeAd(const std::string &attr_name)
std::string * nodeName
Definition: ExpDagAd.h:59
classad::Value getTypeValue(const std::string &attr_name)
Definition: ExpDagAd.h:117
const std::string getDefaultRank()
void setAttribute(attribute attr_name, const std::string &attr_value)
bool getNodeBool(const glite::jobid::JobId &node, const std::string &attr_name)
Definition: ExpDagAd.h:98
Provides a representation of the job description in the JDL language.
Definition: ExpDagAd.h:84
std::vector< JobIdStruct * > children
Definition: ExpDagAd.h:62
std::string getNodeAttribute(const std::string &node, const std::string &attr_name)
Definition: ExpDagAd.h:92
std::vector< std::string > getInputSandbox()
std::vector< std::string > getStringValue(const std::string &attr_name)
bool getBool(const std::string &attr_name)
bool hasAttribute(const std::string &attr_name)
Definition: ExpDagAd.h:107
JobIdStruct & operator=(const JobIdStruct &jobStruct)
Definition: ExpDagAd.h:119
glite::jobid::JobId jobid
Definition: ExpDagAd.h:56
void setDefaultReq(const std::string &attr_value)
void operator=(const ExpDagAd &dag)
void inherit(const std::string &attr_name)
Definition: ExpDagAd.h:111
attribute
Definition: ExpDagAd.h:88
NodeAd getNode(const glite::jobid::JobId &nodeId)
Definition: ExpDagAd.h:96
Definition: ExpDagAd.h:113
Definition: ExpDagAd.h:115
void setDefaultRank(const std::string &attr_value)
std::string getString(const std::string &attr_name)
void addWarnings(const std::string &nodeName, Ad *ad)
const std::string getDefaultReq()
void setDefaultValues(bool val)
Definition: ExpDagAd.h:474
void replaceNode(const glite::jobid::JobId &nodeId, NodeAd &nodeAd)
std::string showDependencies()
std::vector< std::string > getNodeStringValue(const glite::jobid::JobId &node, const std::string &attr_name)
bool hasNodeAttribute(const glite::jobid::JobId &node, const std::string &attr_name)
level
Definition: ExpDagAd.h:109
ExtractedAd * getExtractedAd()
std::vector< std::string > getWarnings()
std::vector< std::pair< std::string, classad::ExprTree * > > getSubAttributes(const std::string &attr_name)
ExpDagAd(const std::string &jdl)
std::string jobid2node(const std::string &jobid)
std::vector< std::string > getSubmissionStrings(std::vector< std::string > *jobids=NULL)
void setLocalAccess(bool lookInto)
void setNodeAttribute(const glite::jobid::JobId &node, const std::string &attr_name, const std::string &attr_value)
std::string getAttribute(attribute attr_name)
Definition: ExpDagAd.h:100
std::vector< std::string > getNodes()
Definition: ExpDagAd.h:105
boost::shared_ptr< glite::jdl::DAGAd > dagad
Definition: ExpDagAd.h:511
checkType
Provides a method for extracting files from a specified path.
Definition: extractfiles.h:215
int getNodeInt(const glite::jobid::JobId &node, const std::string &attr_name)
std::string toString(const level &lev=CURRENT)
void delNodeAttribute(const glite::jobid::JobId &node, const std::string &attr_name)
Definition: ExpDagAd.h:90
std::map< std::string, std::string > getJobIdMap()
bool removeAttribute(attribute attr_name)
Definition: ExpDagAd.h:94
Definition: ExpDagAd.h:41
multiAttribute
Definition: ExpDagAd.h:103
void getJobIdStruct(JobIdStruct &jobIdStruct)