1 /*---------------------------------------------------------------------\
3 | |__ / \ / / . \ . \ |
8 \---------------------------------------------------------------------*/
9 /** \file zypp/SolvAttr.cc
14 #include <satsolver/knownid.h>
19 #include "zypp/base/String.h"
20 #include "zypp/sat/SolvAttr.h"
24 ///////////////////////////////////////////////////////////////////
26 { /////////////////////////////////////////////////////////////////
28 { /////////////////////////////////////////////////////////////////
30 const SolvAttr SolvAttr::allAttr( detail::noId );
31 const SolvAttr SolvAttr::noAttr;
33 #warning STILL ATTRIBUTES HERE WHICH ARE NOT PROVIDED BY SOLV FILES
34 // At least the ones that do nat have a satsolver/knownid.
36 const SolvAttr SolvAttr::name ( SOLVABLE_NAME );
37 const SolvAttr SolvAttr::edition ( SOLVABLE_EVR );
38 const SolvAttr SolvAttr::arch ( SOLVABLE_ARCH );
39 const SolvAttr SolvAttr::vendor ( SOLVABLE_VENDOR );
41 const SolvAttr SolvAttr::provides ( SOLVABLE_PROVIDES );
42 const SolvAttr SolvAttr::obsoletes ( SOLVABLE_OBSOLETES );
43 const SolvAttr SolvAttr::conflicts ( SOLVABLE_CONFLICTS );
44 const SolvAttr SolvAttr::requires ( SOLVABLE_REQUIRES );
45 const SolvAttr SolvAttr::recommends ( SOLVABLE_RECOMMENDS );
46 const SolvAttr SolvAttr::suggests ( SOLVABLE_SUGGESTS );
47 const SolvAttr SolvAttr::supplements ( SOLVABLE_SUPPLEMENTS );
48 const SolvAttr SolvAttr::enhances ( SOLVABLE_ENHANCES );
50 const SolvAttr SolvAttr::summary ( SOLVABLE_SUMMARY ); // translated
51 const SolvAttr SolvAttr::description ( SOLVABLE_DESCRIPTION ); // translated
52 const SolvAttr SolvAttr::insnotify ( SOLVABLE_MESSAGEINS ); // translated
53 const SolvAttr SolvAttr::delnotify ( SOLVABLE_MESSAGEDEL ); // translated
54 const SolvAttr SolvAttr::eula ( SOLVABLE_EULA ); // translated
55 const SolvAttr SolvAttr::cpeid ( SOLVABLE_CPEID );
56 const SolvAttr SolvAttr::installtime ( SOLVABLE_INSTALLTIME );
57 const SolvAttr SolvAttr::buildtime ( SOLVABLE_BUILDTIME );
58 const SolvAttr SolvAttr::installsize ( SOLVABLE_INSTALLSIZE );
59 const SolvAttr SolvAttr::downloadsize ( SOLVABLE_DOWNLOADSIZE );
60 const SolvAttr SolvAttr::diskusage ( SOLVABLE_DISKUSAGE );
63 const SolvAttr SolvAttr::checksum ( SOLVABLE_CHECKSUM );
64 const SolvAttr SolvAttr::medianr ( SOLVABLE_MEDIANR );
65 const SolvAttr SolvAttr::mediafile ( SOLVABLE_MEDIAFILE );
66 const SolvAttr SolvAttr::mediadir ( SOLVABLE_MEDIADIR );
67 const SolvAttr SolvAttr::changelog ( "changelog" );
68 const SolvAttr SolvAttr::buildhost ( SOLVABLE_BUILDHOST );
69 const SolvAttr SolvAttr::distribution ( SOLVABLE_DISTRIBUTION );
70 const SolvAttr SolvAttr::license ( SOLVABLE_LICENSE );
71 const SolvAttr SolvAttr::packager ( SOLVABLE_PACKAGER );
72 const SolvAttr SolvAttr::group ( SOLVABLE_GROUP );
73 const SolvAttr SolvAttr::keywords ( SOLVABLE_KEYWORDS );
74 const SolvAttr SolvAttr::sourcesize ( "sourcesize" );
75 const SolvAttr SolvAttr::authors ( SOLVABLE_AUTHORS );
76 const SolvAttr SolvAttr::filelist ( SOLVABLE_FILELIST );
77 const SolvAttr SolvAttr::sourcearch ( SOLVABLE_SOURCEARCH );
78 const SolvAttr SolvAttr::sourcename ( SOLVABLE_SOURCENAME );
79 const SolvAttr SolvAttr::sourceevr ( SOLVABLE_SOURCEEVR );
80 const SolvAttr SolvAttr::headerend ( SOLVABLE_HEADEREND );
81 const SolvAttr SolvAttr::url ( SOLVABLE_URL );
84 const SolvAttr SolvAttr::patchcategory ( SOLVABLE_PATCHCATEGORY );
85 const SolvAttr SolvAttr::rebootSuggested ( UPDATE_REBOOT );
86 const SolvAttr SolvAttr::restartSuggested ( UPDATE_RESTART );
87 const SolvAttr SolvAttr::reloginSuggested ( UPDATE_RELOGIN );
88 const SolvAttr SolvAttr::message ( UPDATE_MESSAGE );
89 const SolvAttr SolvAttr::updateCollection ( UPDATE_COLLECTION );
90 const SolvAttr SolvAttr::updateCollectionName ( UPDATE_COLLECTION_NAME );
91 const SolvAttr SolvAttr::updateCollectionEvr ( UPDATE_COLLECTION_EVR );
92 const SolvAttr SolvAttr::updateCollectionArch ( UPDATE_COLLECTION_ARCH );
93 const SolvAttr SolvAttr::updateCollectionFilename ( UPDATE_COLLECTION_FILENAME );
94 const SolvAttr SolvAttr::updateCollectionFlags ( UPDATE_COLLECTION_FLAGS );
95 const SolvAttr SolvAttr::updateReference ( UPDATE_REFERENCE );
96 const SolvAttr SolvAttr::updateReferenceType ( UPDATE_REFERENCE_TYPE );
97 const SolvAttr SolvAttr::updateReferenceHref ( UPDATE_REFERENCE_HREF );
98 const SolvAttr SolvAttr::updateReferenceId ( UPDATE_REFERENCE_ID );
99 const SolvAttr SolvAttr::updateReferenceTitle ( UPDATE_REFERENCE_TITLE );
102 const SolvAttr SolvAttr::isvisible ( SOLVABLE_ISVISIBLE );
103 const SolvAttr SolvAttr::icon ( SOLVABLE_ICON );
104 const SolvAttr SolvAttr::order ( SOLVABLE_ORDER );
105 const SolvAttr SolvAttr::isdefault ( "isdefault" );
106 const SolvAttr SolvAttr::category ( SOLVABLE_CATEGORY ); // translated
107 const SolvAttr SolvAttr::script ( "script" );
108 const SolvAttr SolvAttr::includes ( SOLVABLE_INCLUDES );
109 const SolvAttr SolvAttr::extends ( SOLVABLE_EXTENDS );
112 const SolvAttr SolvAttr::productReferenceFile ( PRODUCT_REFERENCEFILE );
113 const SolvAttr SolvAttr::productProductLine ( PRODUCT_PRODUCTLINE );
114 const SolvAttr SolvAttr::productShortlabel ( PRODUCT_SHORTLABEL );
115 const SolvAttr SolvAttr::productDistproduct ( PRODUCT_DISTPRODUCT );
116 const SolvAttr SolvAttr::productDistversion ( PRODUCT_DISTVERSION );
117 const SolvAttr SolvAttr::productType ( PRODUCT_TYPE );
118 const SolvAttr SolvAttr::productFlags ( PRODUCT_FLAGS );
119 const SolvAttr SolvAttr::productRegisterTarget ( PRODUCT_REGISTER_TARGET );
120 const SolvAttr SolvAttr::productRegisterRelease( PRODUCT_REGISTER_RELEASE );
121 const SolvAttr SolvAttr::productUrl ( PRODUCT_URL );
122 const SolvAttr SolvAttr::productUrlType ( PRODUCT_URL_TYPE );
125 const SolvAttr SolvAttr::repositoryTimestamp ( REPOSITORY_TIMESTAMP );
126 const SolvAttr SolvAttr::repositoryExpire ( REPOSITORY_EXPIRE );
127 /** array of repositoryProductLabel repositoryProductCpeid pairs */
128 const SolvAttr SolvAttr::repositoryUpdates ( REPOSITORY_UPDATES );
129 /** array of repositoryProductLabel repositoryProductCpeid pairs */
130 const SolvAttr SolvAttr::repositoryDistros ( REPOSITORY_DISTROS );
131 const SolvAttr SolvAttr::repositoryProductLabel( REPOSITORY_PRODUCT_LABEL );
132 const SolvAttr SolvAttr::repositoryProductCpeid( REPOSITORY_PRODUCT_CPEID );
133 const SolvAttr SolvAttr::repositoryKeywords ( REPOSITORY_KEYWORDS );
135 const SolvAttr SolvAttr::repositoryAddedFileProvides( REPOSITORY_ADDEDFILEPROVIDES );
136 const SolvAttr SolvAttr::repositoryRpmDbCookie ( REPOSITORY_RPMDBCOOKIE );
137 const SolvAttr SolvAttr::repositoryDeltaInfo ( REPOSITORY_DELTAINFO );
139 /////////////////////////////////////////////////////////////////
141 SolvAttr SolvAttr::parent() const
145 case UPDATE_COLLECTION_NAME:
146 case UPDATE_COLLECTION_EVR:
147 case UPDATE_COLLECTION_ARCH:
148 case UPDATE_COLLECTION_FILENAME:
149 case UPDATE_COLLECTION_FLAGS:
150 return updateCollection;
153 case UPDATE_REFERENCE_TYPE:
154 case UPDATE_REFERENCE_HREF:
155 case UPDATE_REFERENCE_ID:
156 case UPDATE_REFERENCE_TITLE:
157 return updateReference;
164 /////////////////////////////////////////////////////////////////
166 ///////////////////////////////////////////////////////////////////