00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_DETAIL_PATCHIMPL_H 00013 #define ZYPP_DETAIL_PATCHIMPL_H 00014 00015 #include "zypp/detail/PatchImplIf.h" 00016 00018 namespace zypp 00019 { 00020 00021 namespace detail 00022 { 00023 00025 // 00026 // CLASS NAME : PatchImpl 00027 // 00032 class PatchImpl : public PatchImplIf 00033 { 00034 public: 00036 PatchImpl(); 00038 ~PatchImpl(); 00039 00040 public: 00042 std::string id() const; 00044 Date timestamp() const; 00046 TranslatedText summary() const; 00048 TranslatedText description() const; 00050 std::string category() const; 00052 bool reboot_needed() const; 00054 bool affects_pkg_manager() const; 00055 00057 bool interactive() const; 00059 AtomList all_atoms() const; 00061 AtomList not_installed_atoms() const; 00062 00063 // TODO check necessarity of functions below 00064 bool any_atom_selected() const; 00065 void mark_atoms_to_freshen(bool freshen); 00066 protected: 00068 std::string _patch_id; 00070 Date _timestamp; 00072 TranslatedText _summary; 00074 TranslatedText _description; 00076 std::string _category; 00078 bool _reboot_needed; 00080 bool _affects_pkg_manager; 00082 AtomList _atoms; 00083 }; 00085 00087 } // namespace detail 00090 } // namespace zypp 00092 #endif // ZYPP_DETAIL_PATCHIMPL_H