glite/jdl/collectionad.h

Go to the documentation of this file.
00001 /*
00002 Copyright (c) Members of the EGEE Collaboration. 2004.
00003 See http://www.eu-egee.org/partners/ for details on the
00004 copyright holders.
00005 
00006 Licensed under the Apache License, Version 2.0 (the "License");
00007 you may not use this file except in compliance with the License.
00008 You may obtain a copy of the License at
00009 
00010     http://www.apache.org/licenses/LICENSE-2.0
00011 
00012 Unless required by applicable law or agreed to in writing, software
00013 distributed under the License is distributed on an "AS IS" BASIS,
00014 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
00015 either express or implied.
00016 See the License for the specific language governing permissions and
00017 limitations under the License.
00018 */
00019 
00020 #ifndef GLITE_WMS_COMMON_REQUESTAD_COLLECTIONAD_H
00021 #define GLITE_WMS_COMMON_REQUESTAD_COLLECTIONAD_H
00022 /*
00023  * collectionad.h
00024  * Copyright (c) 2001 The European Datagrid Project - IST programme, all rights reserved.
00025  * Contributors are mentioned in the code where appropriate.
00026  */
00027 
00028 #include "Ad.h"
00029 #include "NodeAd.h"
00030 #include "extractfiles.h"
00031 namespace glite {
00032 namespace jdl {
00041 class CollectionAd: public glite::jdl::Ad{
00042 public:
00044         CollectionAd( const classad::ClassAd& classAd );
00046         CollectionAd();
00048         CollectionAd( const std::string& classAd );
00050         void operator=(const CollectionAd& collect) ;
00052         virtual ~CollectionAd() throw();
00056         CollectionAd* check();
00060         std::string toSubmissionString();
00066         std::vector< std::string > getNodeStringValue (const std::string &node, const std::string &attr_name);
00073         std::vector< std::pair<std::string ,std::vector< std::string > > >
00074         getNodeStringValues (const std::string &attr_name);
00081         std::map<std::string, std::vector< std::string > >
00082         getNodeStringValuesMap (const std::string &attr_name);
00083 
00089         void setLocalAccess(bool lookInto);
00094         void setDefaultRank (classad::ExprTree* attr_value);
00095 
00100         void setDefaultReq (classad::ExprTree* attr_value );
00105         bool gettoBretrieved(){return toBretrieved;}
00111         ExtractedAd* getExtractedAd();
00116         void addNode(Ad node);
00117 private:
00118         void checkNode(NodeAd &nodead,std::vector<std::string> &extracted);
00119         void checkNodes(CollectionAd *collect,std::vector<std::string> &extracted);
00120         // decide whether to check file extistence (EXISTENCE) or not (WMPROXY)
00121         checkType lookInto_b;
00122         bool toBretrieved ;
00123         // Default special attributes:
00124         classad::ExprTree *defaultRank ;
00125         classad::ExprTree  *defaultReq ;
00126         // extracted local files
00127         ExtractedAd *extractedAd ;
00128 };
00129 
00130 } // jdl namespace
00131 } // glite namespace
00132 
00133 #endif
00134 
00135 //EOF

Generated on 2 Jul 2013 for jdl-api-cpp-3.4.2 by  doxygen 1.4.7