00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_SOURCE_YUM_YUMPACKAGEIMPL_H 00013 #define ZYPP_SOURCE_YUM_YUMPACKAGEIMPL_H 00014 00015 #include "zypp/source/SourceImpl.h" 00016 #include "zypp/detail/PackageImpl.h" 00017 #include "zypp/parser/yum/YUMParserData.h" 00018 #include "zypp/Changelog.h" 00019 #include "zypp/CheckSum.h" 00020 00022 namespace zypp 00023 { 00024 00025 namespace source 00026 { 00027 namespace yum 00028 { 00029 00031 // 00032 // CLASS NAME : YUMPackageImpl 00033 // 00036 class YUMPackageImpl : public detail::PackageImplIf 00037 { 00038 public: 00041 YUMPackageImpl( 00042 Source_Ref source_r, 00043 const zypp::parser::yum::YUMPrimaryData & parsed, 00044 const zypp::parser::yum::YUMFileListData & filelist, 00045 const zypp::parser::yum::YUMOtherData & other 00046 ); 00047 YUMPackageImpl( 00048 Source_Ref source_r, 00049 const zypp::parser::yum::YUMPatchPackage & parsed 00050 ); 00051 00053 virtual TranslatedText summary() const; 00055 virtual TranslatedText description() const; 00057 virtual TranslatedText licenseToConfirm() const; 00059 virtual ByteCount size() const; 00061 virtual Date buildtime() const; 00063 virtual std::string buildhost() const; 00065 virtual Date installtime() const; 00067 virtual std::string distribution() const; 00069 virtual Vendor vendor() const; 00071 virtual Label license() const; 00073 virtual std::string packager() const; 00075 virtual PackageGroup group() const; 00077 virtual Changelog changelog() const; 00079 virtual Pathname location() const; 00082 virtual std::string url() const; 00084 virtual std::string os() const; 00086 virtual Text prein() const; 00088 virtual Text postin() const; 00090 virtual Text preun() const; 00092 virtual Text postun() const; 00094 virtual ByteCount sourcesize() const; 00096 virtual ByteCount archivesize() const; 00098 virtual std::list<std::string> authors() const; 00100 virtual std::list<std::string> filenames() const; 00102 virtual std::string type() const; 00104 virtual std::list<std::string> keywords() const; 00106 virtual bool installOnly() const; 00108 virtual unsigned sourceMediaNr() const; 00110 virtual CheckSum checksum() const; 00112 virtual std::list<DeltaRpm> deltaRpms() const; 00114 virtual std::list<PatchRpm> patchRpms() const; 00115 00116 protected: 00117 TranslatedText _summary; 00118 TranslatedText _description; 00119 TranslatedText _license_to_confirm; 00120 Date _buildtime; 00121 std::string _buildhost; 00122 std::string _url; 00123 Vendor _vendor; 00124 Label _license; 00125 std::string _packager; 00126 PackageGroup _group; 00127 Changelog _changelog; 00128 std::string _type; 00129 std::list<std::string> _authors; 00130 std::list<std::string> _keywords; 00131 unsigned _mediaNumber; 00132 CheckSum _checksum; 00133 std::list<std::string> _filenames; 00134 Pathname _location; 00135 std::list<DeltaRpm> _delta_rpms; 00136 std::list<PatchRpm> _patch_rpms; 00137 00138 bool _install_only; 00139 00140 unsigned int _package_size; 00141 unsigned int _size; 00142 00143 /* 00144 unsigned _size_package; 00145 std::string _sourcepkg; 00146 std::list<DirSize> _dir_sizes; 00147 */ 00148 /* 00149 std::list<ChangelogEntry> changelog; 00150 */ 00151 private: 00152 Source_Ref _source; 00153 public: 00154 Source_Ref source() const; 00155 00156 friend class YUMSourceImpl; 00157 00158 }; 00160 } // namespace yum 00162 } // namespace source 00165 } // namespace zypp 00167 #endif // ZYPP_SOURCE_YUM_YUMPACKAGEIMPL_H