00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef InstSrcTags_h
00023 #define InstSrcTags_h
00024
00025 #include <fstream>
00026 #include <y2util/CommonPkdParser.h>
00027
00028
00029
00030 const std::string TypeTag = "=Type";
00031 const std::string UrlTag = "=URL";
00032 const std::string ProdDirTag = "=ProductDir";
00033 const std::string DefActTag = "=Default_activate";
00034 const std::string MediaBTag = "+Media";
00035 const std::string MediaETag = "-Media";
00036 const std::string ContentBTag = "+Product";
00037 const std::string ContentETag = "-Product";
00038 const std::string ArchBTag = "+Arch";
00039 const std::string ArchETag = "-Arch";
00040 const std::string DefBaseTag = "=DefaultBase";
00041 const std::string LabelMapBTag = "+LabelMap";
00042 const std::string LabelMapETag = "-LabelMap";
00043 const std::string LinguasBTag = "+Linguas";
00044 const std::string LinguasETag = "-Linguas";
00045 const std::string LabelTag = "=Label";
00046 const std::string LangTag = "=Language";
00047 const std::string TimeTag = "=Timezone";
00048 const std::string DescrDirTag = "=DescriptionDir";
00049 const std::string DataDirTag = "=DataDir";
00050
00051
00053
00054
00060 class InstSrcMediaTags : public CommonPkdParser::TagSet
00061 {
00062
00063 public:
00064 enum Tags {
00065 TYPE,
00066 URL,
00067 PRODUCTDIR,
00068 ACTIVATE,
00069 MEDIA,
00070 PRODUCT,
00071 DEFBASE,
00072 ARCH,
00073 LANGUAGE,
00074 LABEL,
00075 LABELMAP,
00076 LINGUAS,
00077 TIMEZONE,
00078 DESCRDIR,
00079 DATADIR,
00080 NUM_TAGS
00081 };
00082
00083 public:
00084 InstSrcMediaTags( )
00085 : TagSet() {
00086
00087 CommonPkdParser::Tag* t;
00088 createTag( TypeTag, TYPE );
00089 createTag( UrlTag, URL );
00090 createTag( ProdDirTag, PRODUCTDIR );
00091 createTag( DefActTag, ACTIVATE );
00092 t = createTag( MediaBTag, MEDIA );
00093 t->setEndTag( MediaETag );
00094 t = createTag( ContentBTag, PRODUCT );
00095 t->setEndTag( ContentETag );
00096 t = createTag( ArchBTag, ARCH );
00097 t->setEndTag( ArchETag );
00098 createTag( DefBaseTag, DEFBASE );
00099 t = createTag( LabelMapBTag, LABELMAP);
00100 t->setEndTag( LabelMapETag );
00101 t = createTag( LinguasBTag, LINGUAS );
00102 t->setEndTag( LinguasETag );
00103 createTag( LabelTag, LABEL );
00104 createTag( LangTag, LANGUAGE );
00105 createTag( TimeTag, TIMEZONE );
00106 createTag( DescrDirTag, DESCRDIR );
00107 createTag( DataDirTag, DATADIR );
00108 };
00109
00110 private:
00111
00112 CommonPkdParser::Tag* createTag( std::string tagName, Tags tagEnum ) {
00113
00114 CommonPkdParser::Tag* t;
00115 t = new CommonPkdParser::Tag( tagName, CommonPkdParser::Tag::ACCEPTONCE );
00116 this->addTag(t);
00117 addTagByIndex( tagEnum, t );
00118
00119 return t;
00120 }
00121
00122 };
00123
00124 #endif // InstSrcTags_h