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 virtual TranslatedText licenseToConfirm() const; 00067 00068 // TODO check necessarity of functions below 00069 bool any_atom_selected() const; 00070 void mark_atoms_to_freshen(bool freshen); 00071 protected: 00072 std::string _patch_id; 00073 Date _timestamp; 00074 TranslatedText _summary; 00075 TranslatedText _description; 00076 std::string _category; 00077 bool _reboot_needed; 00078 bool _affects_pkg_manager; 00079 AtomList _atoms; 00080 TranslatedText _license_to_confirm; 00081 private: 00082 Source_Ref _source; 00083 public: 00084 Source_Ref source() const; 00085 friend class YUMSourceImpl; 00086 }; 00088 } // namespace yum 00090 } // namespace source 00093 } // namespace zypp 00095 #endif // ZYPP_SOURCE_YUM_YUMPATCHIMPL_H