libzypp
10.5.0
|
00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 extern "C" 00013 { 00014 #include <solv/knownid.h> 00015 } 00016 00017 #include <iostream> 00018 00019 #include "zypp/base/String.h" 00020 #include "zypp/sat/SolvAttr.h" 00021 00022 using std::endl; 00023 00025 namespace zypp 00026 { 00027 namespace sat 00028 { 00029 00030 const SolvAttr SolvAttr::allAttr( detail::noId ); 00031 const SolvAttr SolvAttr::noAttr; 00032 00033 #warning STILL ATTRIBUTES HERE WHICH ARE NOT PROVIDED BY SOLV FILES 00034 // At least the ones that do nat have a solv/knownid. 00035 00036 const SolvAttr SolvAttr::name ( SOLVABLE_NAME ); 00037 const SolvAttr SolvAttr::edition ( SOLVABLE_EVR ); 00038 const SolvAttr SolvAttr::arch ( SOLVABLE_ARCH ); 00039 const SolvAttr SolvAttr::vendor ( SOLVABLE_VENDOR ); 00040 00041 const SolvAttr SolvAttr::provides ( SOLVABLE_PROVIDES ); 00042 const SolvAttr SolvAttr::obsoletes ( SOLVABLE_OBSOLETES ); 00043 const SolvAttr SolvAttr::conflicts ( SOLVABLE_CONFLICTS ); 00044 const SolvAttr SolvAttr::requires ( SOLVABLE_REQUIRES ); 00045 const SolvAttr SolvAttr::recommends ( SOLVABLE_RECOMMENDS ); 00046 const SolvAttr SolvAttr::suggests ( SOLVABLE_SUGGESTS ); 00047 const SolvAttr SolvAttr::supplements ( SOLVABLE_SUPPLEMENTS ); 00048 const SolvAttr SolvAttr::enhances ( SOLVABLE_ENHANCES ); 00049 00050 const SolvAttr SolvAttr::summary ( SOLVABLE_SUMMARY ); // translated 00051 const SolvAttr SolvAttr::description ( SOLVABLE_DESCRIPTION ); // translated 00052 const SolvAttr SolvAttr::insnotify ( SOLVABLE_MESSAGEINS ); // translated 00053 const SolvAttr SolvAttr::delnotify ( SOLVABLE_MESSAGEDEL ); // translated 00054 const SolvAttr SolvAttr::eula ( SOLVABLE_EULA ); // translated 00055 const SolvAttr SolvAttr::cpeid ( SOLVABLE_CPEID ); 00056 const SolvAttr SolvAttr::installtime ( SOLVABLE_INSTALLTIME ); 00057 const SolvAttr SolvAttr::buildtime ( SOLVABLE_BUILDTIME ); 00058 const SolvAttr SolvAttr::installsize ( SOLVABLE_INSTALLSIZE ); 00059 const SolvAttr SolvAttr::downloadsize ( SOLVABLE_DOWNLOADSIZE ); 00060 const SolvAttr SolvAttr::diskusage ( SOLVABLE_DISKUSAGE ); 00061 00062 //package 00063 const SolvAttr SolvAttr::checksum ( SOLVABLE_CHECKSUM ); 00064 const SolvAttr SolvAttr::medianr ( SOLVABLE_MEDIANR ); 00065 const SolvAttr SolvAttr::mediafile ( SOLVABLE_MEDIAFILE ); 00066 const SolvAttr SolvAttr::mediadir ( SOLVABLE_MEDIADIR ); 00067 const SolvAttr SolvAttr::changelog ( "changelog" ); 00068 const SolvAttr SolvAttr::buildhost ( SOLVABLE_BUILDHOST ); 00069 const SolvAttr SolvAttr::distribution ( SOLVABLE_DISTRIBUTION ); 00070 const SolvAttr SolvAttr::license ( SOLVABLE_LICENSE ); 00071 const SolvAttr SolvAttr::packager ( SOLVABLE_PACKAGER ); 00072 const SolvAttr SolvAttr::group ( SOLVABLE_GROUP ); 00073 const SolvAttr SolvAttr::keywords ( SOLVABLE_KEYWORDS ); 00074 const SolvAttr SolvAttr::sourcesize ( "sourcesize" ); 00075 const SolvAttr SolvAttr::authors ( SOLVABLE_AUTHORS ); 00076 const SolvAttr SolvAttr::filelist ( SOLVABLE_FILELIST ); 00077 const SolvAttr SolvAttr::sourcearch ( SOLVABLE_SOURCEARCH ); 00078 const SolvAttr SolvAttr::sourcename ( SOLVABLE_SOURCENAME ); 00079 const SolvAttr SolvAttr::sourceevr ( SOLVABLE_SOURCEEVR ); 00080 const SolvAttr SolvAttr::headerend ( SOLVABLE_HEADEREND ); 00081 const SolvAttr SolvAttr::url ( SOLVABLE_URL ); 00082 00083 // patch 00084 const SolvAttr SolvAttr::patchcategory ( SOLVABLE_PATCHCATEGORY ); 00085 const SolvAttr SolvAttr::rebootSuggested ( UPDATE_REBOOT ); 00086 const SolvAttr SolvAttr::restartSuggested ( UPDATE_RESTART ); 00087 const SolvAttr SolvAttr::reloginSuggested ( UPDATE_RELOGIN ); 00088 const SolvAttr SolvAttr::message ( UPDATE_MESSAGE ); 00089 const SolvAttr SolvAttr::updateCollection ( UPDATE_COLLECTION ); 00090 const SolvAttr SolvAttr::updateCollectionName ( UPDATE_COLLECTION_NAME ); 00091 const SolvAttr SolvAttr::updateCollectionEvr ( UPDATE_COLLECTION_EVR ); 00092 const SolvAttr SolvAttr::updateCollectionArch ( UPDATE_COLLECTION_ARCH ); 00093 const SolvAttr SolvAttr::updateCollectionFilename ( UPDATE_COLLECTION_FILENAME ); 00094 const SolvAttr SolvAttr::updateCollectionFlags ( UPDATE_COLLECTION_FLAGS ); 00095 const SolvAttr SolvAttr::updateReference ( UPDATE_REFERENCE ); 00096 const SolvAttr SolvAttr::updateReferenceType ( UPDATE_REFERENCE_TYPE ); 00097 const SolvAttr SolvAttr::updateReferenceHref ( UPDATE_REFERENCE_HREF ); 00098 const SolvAttr SolvAttr::updateReferenceId ( UPDATE_REFERENCE_ID ); 00099 const SolvAttr SolvAttr::updateReferenceTitle ( UPDATE_REFERENCE_TITLE ); 00100 00101 //pattern 00102 const SolvAttr SolvAttr::isvisible ( SOLVABLE_ISVISIBLE ); 00103 const SolvAttr SolvAttr::icon ( SOLVABLE_ICON ); 00104 const SolvAttr SolvAttr::order ( SOLVABLE_ORDER ); 00105 const SolvAttr SolvAttr::isdefault ( "isdefault" ); 00106 const SolvAttr SolvAttr::category ( SOLVABLE_CATEGORY ); // translated 00107 const SolvAttr SolvAttr::script ( "script" ); 00108 const SolvAttr SolvAttr::includes ( SOLVABLE_INCLUDES ); 00109 const SolvAttr SolvAttr::extends ( SOLVABLE_EXTENDS ); 00110 00111 // product 00112 const SolvAttr SolvAttr::productReferenceFile ( PRODUCT_REFERENCEFILE ); 00113 const SolvAttr SolvAttr::productProductLine ( PRODUCT_PRODUCTLINE ); 00114 const SolvAttr SolvAttr::productShortlabel ( PRODUCT_SHORTLABEL ); 00115 const SolvAttr SolvAttr::productDistproduct ( PRODUCT_DISTPRODUCT ); 00116 const SolvAttr SolvAttr::productDistversion ( PRODUCT_DISTVERSION ); 00117 const SolvAttr SolvAttr::productType ( PRODUCT_TYPE ); 00118 const SolvAttr SolvAttr::productFlags ( PRODUCT_FLAGS ); 00119 const SolvAttr SolvAttr::productRegisterTarget ( PRODUCT_REGISTER_TARGET ); 00120 const SolvAttr SolvAttr::productRegisterRelease( PRODUCT_REGISTER_RELEASE ); 00121 const SolvAttr SolvAttr::productUrl ( PRODUCT_URL ); 00122 const SolvAttr SolvAttr::productUrlType ( PRODUCT_URL_TYPE ); 00123 00124 // repository 00125 const SolvAttr SolvAttr::repositoryTimestamp ( REPOSITORY_TIMESTAMP ); 00126 const SolvAttr SolvAttr::repositoryExpire ( REPOSITORY_EXPIRE ); 00128 const SolvAttr SolvAttr::repositoryUpdates ( REPOSITORY_UPDATES ); 00130 const SolvAttr SolvAttr::repositoryDistros ( REPOSITORY_DISTROS ); 00131 const SolvAttr SolvAttr::repositoryProductLabel( REPOSITORY_PRODUCT_LABEL ); 00132 const SolvAttr SolvAttr::repositoryProductCpeid( REPOSITORY_PRODUCT_CPEID ); 00133 const SolvAttr SolvAttr::repositoryKeywords ( REPOSITORY_KEYWORDS ); 00134 00135 const SolvAttr SolvAttr::repositoryAddedFileProvides( REPOSITORY_ADDEDFILEPROVIDES ); 00136 const SolvAttr SolvAttr::repositoryRpmDbCookie ( REPOSITORY_RPMDBCOOKIE ); 00137 const SolvAttr SolvAttr::repositoryDeltaInfo ( REPOSITORY_DELTAINFO ); 00138 00139 const SolvAttr SolvAttr::repositoryToolVersion ( REPOSITORY_TOOLVERSION ); 00140 00142 00143 SolvAttr SolvAttr::parent() const 00144 { 00145 switch( id() ) 00146 { 00147 case UPDATE_COLLECTION_NAME: 00148 case UPDATE_COLLECTION_EVR: 00149 case UPDATE_COLLECTION_ARCH: 00150 case UPDATE_COLLECTION_FILENAME: 00151 case UPDATE_COLLECTION_FLAGS: 00152 return updateCollection; 00153 break; 00154 00155 case UPDATE_REFERENCE_TYPE: 00156 case UPDATE_REFERENCE_HREF: 00157 case UPDATE_REFERENCE_ID: 00158 case UPDATE_REFERENCE_TITLE: 00159 return updateReference; 00160 break; 00161 } 00162 return noAttr; 00163 } 00164 00165 } // namespace sat 00167 } // namespace zypp