00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00013 #ifndef zypp_repo_cached_PatternImpl_H 00014 #define zypp_repo_cached_PatternImpl_H 00015 00016 #include "zypp/detail/PatternImpl.h" 00017 #include "zypp/repo/cached/RepoImpl.h" 00018 00020 namespace zypp 00021 { 00022 00023 namespace cache 00024 { 00025 class Attribute; 00027 } // namespace cache 00029 namespace repo 00030 { 00031 namespace cached 00032 { 00033 00035 // 00036 // CLASS NAME : PatternImpl 00037 // 00038 class PatternImpl : public detail::PatternImplIf 00039 { 00040 public: 00041 00042 PatternImpl( const data::RecordId &id, repo::cached::RepoImpl::Ptr repository_r ); 00043 00044 virtual TranslatedText summary() const; 00045 virtual TranslatedText description() const; 00046 virtual TranslatedText insnotify() const; 00047 virtual TranslatedText delnotify() const; 00048 virtual TranslatedText licenseToConfirm() const; 00049 virtual Vendor vendor() const; 00050 virtual ByteCount size() const; 00051 virtual bool installOnly() const; 00052 virtual Date buildtime() const; 00053 virtual Date installtime() const; 00054 00055 // PATTERN 00056 virtual bool isDefault() const; 00057 virtual bool userVisible() const; 00058 virtual TranslatedText category() const; 00059 virtual Pathname icon() const; 00060 virtual Pathname script() const; 00061 virtual Label order() const; 00062 virtual const CapSet & includes() const; 00063 virtual const CapSet & extends() const; 00064 00065 virtual Repository repository() const; 00066 00067 private: 00069 void initUiCapSetFromAttr( CapSet & caps_r, const cache::Attribute & attr_r ) const; 00070 00071 private: 00072 repo::cached::RepoImpl::Ptr _repository; 00073 data::RecordId _id; 00074 mutable scoped_ptr<CapSet> _includes; 00075 mutable scoped_ptr<CapSet> _extends; 00076 }; 00078 } // namespace cached 00079 } // namespace repository 00080 } // namespace zypp 00082 #endif // ZMD_BACKEND_DBSOURCE_DBPACKAGEIMPL_H 00083
1.5.3