20 #ifndef GLITE_WMS_COMMON_REQUESTAD_AD_H
21 #define GLITE_WMS_COMMON_REQUESTAD_AD_H
51 #include "classad_distribution.h"
67 class Ad :
protected classad::ClassAd{
76 virtual ~Ad()
throw();
80 Ad(
const classad::ClassAd& classAd );
84 Ad(
const std::string& jdl_string) ;
96 void fromString(
const std::string& jdl_string, std::string jdl_file=
"") ;
100 void fromFile(
const std::string& jdl_file) ;
109 virtual void fromClassAd(
const classad::ClassAd& classAd);
120 virtual std::string
toString(
const std::string& attr_name );
135 classad::ClassAd*
const ad(){
return static_cast<ClassAd*
>(Copy());}
145 virtual classad::ExprTree*
delAttribute(
const std::string& attr_name) ;
155 virtual classad::ExprTree*
lookUp(
const std::string& attr_name){
return Lookup(attr_name);};
159 bool hasAttribute(
const std::string& attr_name,
const std::string& attr_value);
171 void merge (
Ad source,
bool overwrite=
true);
210 int getType (
const std::string& attr_name ) ;
218 void addAttribute (
const std::string& attr_name,
int attr_value) ;
226 void addAttribute (
const std::string& attr_name,
double attr_value) ;
234 void addAttribute (
const std::string& attr_name,
bool attr_value) ;
243 void addAttribute (
const std::string& attr_name,
const std::string& attr_value);
268 virtual void setAttributeExpr (
const std::string& attr_name,
const std::string& attr_value);
275 virtual void setAttribute (
const std::string& attr_name,
int attr_value) ;
282 virtual void setAttribute (
const std::string& attr_name,
const std::string& attr_value) ;
289 virtual void setAttribute (
const std::string& attr_name,
const char *attr_value ) {
setAttribute (attr_name , std::string(attr_value) ); }
296 virtual void setAttribute (
const std::string& attr_name,
double attr_value) ;
303 virtual void setAttribute (
const std::string& attr_name,
bool attr_value) ;
310 virtual void setAttribute (
const std::string& attr_name,
Ad* attr_value) ;
317 virtual void setAttributeExpr (
const std::string& attr_name, classad::ExprTree* attr_value) ;
331 std::vector<int>
getIntValue(
const std::string& attr_name) ;
338 std::vector<double>
getDoubleValue(
const std::string& attr_name) ;
345 std::vector<bool>
getBoolValue(
const std::string& attr_name) ;
352 virtual std::vector<std::string>
getStringValue(
const std::string& attr_name) ;
359 std::vector<std::vector<std::string> >
getStringList(
const std::string& attr_name) ;
366 virtual Ad getAd(
const std::string& attr_name);
373 virtual std::string
getString(
const std::string& attr_name) ;
380 virtual int getInt(
const std::string& attr_name) ;
387 virtual double getDouble(
const std::string& attr_name) ;
394 virtual bool getBool(
const std::string& attr_name) ;
428 virtual void addAttribute(std::string attr_name , classad::Value val) ;
435 virtual void appendValue(classad::ExprTree* tree ,
const classad::Value& val,
const std::string& attr_name) ;
441 virtual void insertAttribute(
const std::string& attr_name , classad::ExprTree* val);
447 virtual void insertAttribute(
const std::string& attr_name , classad::Value val);
453 virtual classad::Value
getTypeValue(
const std::string& attr_name);
458 bool hasAttribute( classad::ExprTree* tree ,
const std::string& attr_value);
virtual std::string getAttributeExpr(const std::string &attr_name)
std::vector< int > getIntValue(const std::string &attr_name)
virtual int getInt(const std::string &attr_name)
std::vector< std::vector< std::string > > getStringList(const std::string &attr_name)
void remAttribute(const std::string &attr_name)
virtual std::string getString(const std::string &attr_name)
virtual classad::ExprTree * delAttribute(const std::string &attr_name)
std::vector< bool > getBoolValue(const std::string &attr_name)
void fromStream(std::istream &jdl_in)
void addAttribute(const std::string &attr_name, const char *attr_value)
Definition: Ad.h:252
virtual void setAttributeExpr(const std::string &attr_name, const std::string &attr_value)
virtual void fromClassAd(const classad::ClassAd &classAd)
void fromString(const std::string &jdl_string, std::string jdl_file="")
std::vector< std::string > attributes()
void fromFile(const std::string &jdl_file)
std::vector< std::string > getWarnings()
int getType(const std::string &attr_name)
virtual void operator=(const Ad &jobad)
virtual classad::Value getTypeValue(const std::string &attr_name)
std::vector< std::string > warning_messages_v
Definition: Ad.h:460
virtual std::string toLines()
virtual classad::ExprTree * lookUp(const std::string &attr_name)
Definition: Ad.h:155
virtual double getDouble(const std::string &attr_name)
void addWarning(const std::string &msg)
bool hasAttribute(const std::string &attr_name)
virtual std::vector< std::string > getStringValue(const std::string &attr_name)
virtual std::string toString()
void merge(Ad source, bool overwrite=true)
void addAttribute(const std::string &attr_name, int attr_value)
virtual void setAttribute(const std::string &attr_name, const char *attr_value)
Definition: Ad.h:289
virtual Ad getAd(const std::string &attr_name)
virtual void setAttribute(const std::string &attr_name, int attr_value)
classad::ClassAd *const ad()
Definition: Ad.h:135
virtual void insertAttribute(const std::string &attr_name, classad::ExprTree *val)
std::string glite_wms_jdl_toLower(const std::string &src)
std::vector< double > getDoubleValue(const std::string &attr_name)
virtual void appendValue(classad::ExprTree *tree, const classad::Value &val, const std::string &attr_name)
virtual bool getBool(const std::string &attr_name)