00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_PACKAGE_H 00013 #define ZYPP_PACKAGE_H 00014 00015 #include "zypp/ResObject.h" 00016 #include "zypp/detail/PackageImplIf.h" 00017 00019 namespace zypp 00020 { 00021 00022 DEFINE_PTR_TYPE(Package); 00023 00025 // 00026 // CLASS NAME : Package 00027 // 00030 class Package : public ResObject 00031 { 00032 00033 public: 00034 typedef detail::PackageImplIf Impl; 00035 typedef Package Self; 00036 typedef ResTraits<Self> TraitsType; 00037 typedef TraitsType::PtrType Ptr; 00038 typedef TraitsType::constPtrType constPtr; 00039 00040 public: 00044 CheckSum checksum() const; 00046 Date installtime() const; 00048 Changelog changelog() const; 00050 Date buildtime() const; 00052 std::string buildhost() const; 00054 std::string distribution() const; 00056 Vendor vendor() const; 00058 Label license() const; 00060 std::string packager() const; 00062 PackageGroup group() const; 00065 std::string url() const; 00067 std::string os() const; 00069 Text prein() const; 00071 Text postin() const; 00073 Text preun() const; 00075 Text postun() const; 00077 ByteCount sourcesize() const; 00079 ByteCount archivesize() const; 00081 std::list<std::string> authors() const; 00083 std::list<std::string> filenames() const; 00084 00086 DiskUsage diskusage() const; 00087 00089 License licenseToConfirm() const; 00090 00092 bool installOnly() const; 00094 unsigned mediaId() const; 00096 Pathname location() const; 00097 00098 // data here: 00099 00100 00101 protected: 00102 Package( const NVRAD & nvrad_r ); 00104 virtual ~Package(); 00105 00106 private: 00108 virtual Impl & pimpl() = 0; 00110 virtual const Impl & pimpl() const = 0; 00111 }; 00113 00115 } // namespace zypp 00117 #endif // ZYPP_PACKAGE_H
1.4.6