00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_SOURCE_YUM_YUMSCRIPTIMPL_H 00013 #define ZYPP_SOURCE_YUM_YUMSCRIPTIMPL_H 00014 00015 #include "zypp/source/SourceImpl.h" 00016 #include "zypp/detail/ScriptImpl.h" 00017 #include "zypp/parser/yum/YUMParserData.h" 00018 #include "zypp/TmpPath.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 : YUMScriptImpl 00033 // 00035 class YUMScriptImpl : public detail::ScriptImplIf 00036 { 00037 public: 00039 YUMScriptImpl( 00040 Source_Ref source_r, 00041 const zypp::parser::yum::YUMPatchScript & parsed 00042 ); 00044 virtual Pathname do_script() const; 00046 virtual Pathname undo_script() const; 00048 virtual bool undo_available() const; 00049 00050 protected: 00052 std::string _do_script; 00054 std::string _undo_script; 00056 Pathname _do_location; 00058 Pathname _undo_location; 00060 unsigned _do_media; 00062 unsigned _undo_media; 00063 00064 mutable shared_ptr<filesystem::TmpFile> _tmp_do_script; 00065 mutable shared_ptr<filesystem::TmpFile> _tmp_undo_script; 00066 00067 CheckSum _do_checksum; 00068 CheckSum _undo_checksum; 00069 private: 00070 Source_Ref _source; 00071 public: 00072 Source_Ref source() const; 00073 }; 00075 } // namespace yum 00077 } // namespace source 00080 } // namespace zypp 00082 #endif // ZYPP_SOURCE_YUM_YUMSCRIPTIMPL_H
1.4.6