00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_SOURCE_YUM_YUMPATCHIMPL_H 00013 #define ZYPP_SOURCE_YUM_YUMPATCHIMPL_H 00014 00015 #include "zypp/source/SourceImpl.h" 00016 #include "zypp/detail/PatchImpl.h" 00017 #include "zypp/parser/yum/YUMParserData.h" 00018 #include "zypp/source/yum/YUMSourceImpl.h" 00019 00021 namespace zypp 00022 { 00023 00024 namespace source 00025 { 00026 namespace yum 00027 { 00028 00030 // 00031 // CLASS NAME : YUMPatchImpl 00032 // 00035 class YUMPatchImpl : public detail::PatchImplIf 00036 { 00037 public: 00039 YUMPatchImpl( 00040 Source_Ref source_r, 00041 const zypp::parser::yum::YUMPatchData & parsed, 00042 YUMSourceImpl & srcimpl_r 00043 ); 00045 std::string id() const; 00047 Date timestamp() const; 00049 std::string category() const; 00051 bool reboot_needed() const; 00053 bool affects_pkg_manager() const; 00055 bool interactive() const; 00057 AtomList all_atoms() const; 00059 AtomList not_installed_atoms() const; 00060 00062 virtual TranslatedText summary() const; 00064 virtual TranslatedText description() const; 00065 00066 // TODO check necessarity of functions below 00067 bool any_atom_selected() const; 00068 void mark_atoms_to_freshen(bool freshen); 00069 protected: 00071 std::string _patch_id; 00073 Date _timestamp; 00075 TranslatedText _summary; 00077 TranslatedText _description; 00079 std::string _category; 00081 bool _reboot_needed; 00083 bool _affects_pkg_manager; 00085 AtomList _atoms; 00086 private: 00087 Source_Ref _source; 00088 public: 00089 Source_Ref source() const; 00090 friend class YUMSourceImpl; 00091 }; 00093 } // namespace yum 00095 } // namespace source 00098 } // namespace zypp 00100 #endif // ZYPP_SOURCE_YUM_YUMPATCHIMPL_H
1.4.6