Refined Resolvables interfaces, implementatio interfaces, factory
[platform/upstream/libzypp.git] / zypp / detail / PackageImplIf.h
1 /*---------------------------------------------------------------------\
2 |                          ____ _   __ __ ___                          |
3 |                         |__  / \ / / . \ . \                         |
4 |                           / / \ V /|  _/  _/                         |
5 |                          / /__ | | | | | |                           |
6 |                         /_____||_| |_| |_|                           |
7 |                                                                      |
8 \---------------------------------------------------------------------*/
9 /** \file       zypp/detail/PackageImplIf.h
10  *
11 */
12 #ifndef ZYPP_DETAIL_PACKAGEIMPLIF_H
13 #define ZYPP_DETAIL_PACKAGEIMPLIF_H
14
15 #include "zypp/detail/ResObjectImplIf.h"
16
17 ///////////////////////////////////////////////////////////////////
18 namespace zypp
19 { /////////////////////////////////////////////////////////////////
20
21   class Package;
22
23   ///////////////////////////////////////////////////////////////////
24   namespace detail
25   { /////////////////////////////////////////////////////////////////
26
27     ///////////////////////////////////////////////////////////////////
28     //
29     //  CLASS NAME : PackageImplIf
30     //
31     /** Abstact Package implementation interface.
32     */
33     class PackageImplIf : public ResObjectImplIf
34     {
35     public:
36       typedef Package ResType;
37
38     public:
39 #if 0
40       /** */
41       virtual std::list<std::string> insnotify() const;
42       /** */
43       virtual std::list<std::string> delnotify() const;
44       /** */
45       virtual FSize size() const;
46       /** */
47       virtual bool providesSources() const;
48       /** */
49       virtual std::string instSrcLabel() const;
50       /** */
51       virtual Vendor instSrcVendor() const;
52       /** */
53       virtual unsigned instSrcRank() const;
54       /** */
55       virtual PkgSplitSet splitprovides() const;
56       /** */
57       virtual Date buildtime() const;
58       /** */
59       virtual std::string buildhost() const;
60       /** */
61       virtual Date installtime() const;
62       /** */
63       virtual std::string distribution() const;
64       /** */
65       virtual Vendor vendor() const;
66       /** */
67       virtual std::string license() const;
68       /** */
69       virtual std::list<std::string> licenseToConfirm() const;
70       /** */
71       virtual std::string packager() const;
72       /** */
73       virtual std::string group() const;
74       /** */
75       virtual YStringTreeItem * group_ptr() const;
76       /** */
77       virtual std::list<std::string> changelog() const;
78       /** */
79       virtual std::string url() const;
80       /** */
81       virtual std::string os() const;
82       /** */
83       virtual std::list<std::string> prein() const;
84       /** */
85       virtual std::list<std::string> postin() const;
86       /** */
87       virtual std::list<std::string> preun() const;
88       /** */
89       virtual std::list<std::string> postun() const;
90       /** */
91       virtual std::string sourceloc() const;
92       /** */
93       virtual FSize sourcesize() const;
94       /** */
95       virtual FSize archivesize() const;
96       /** */
97       virtual std::list<std::string> authors() const;
98       /** */
99       virtual std::list<std::string> filenames() const;
100       /** */
101       virtual std::list<std::string> recommends() const;
102       /** */
103       virtual std::list<std::string> suggests() const;
104       /** */
105       virtual std::string location() const;
106       /** */
107       virtual unsigned int medianr() const;
108       /** */
109       virtual std::list<std::string> keywords() const;
110       /** */
111       virtual std::string md5sum() const;
112       /** */
113       virtual std::string externalUrl() const;
114       /** */
115       virtual std::list<PkgEdition> patchRpmBaseVersions() const;
116       /** */
117       virtual FSize patchRpmSize() const;
118       /** */
119       virtual bool forceInstall() const;
120       /** */
121       virtual std::string patchRpmMD5() const;
122       /** */
123       virtual bool isRemote() const;
124       /** */
125       virtual PMError providePkgToInstall( Pathname& path_r ) const;
126       /** */
127       virtual PMError provideSrcPkgToInstall( Pathname& path_r ) const;
128       /** */
129       virtual constInstSrcPtr source() const;
130       /** */
131       virtual bool prefererCandidate() const;
132       /** */
133       virtual void du( PkgDu & dudata_r ) const;
134       /** */
135       virtual std::list<PMPackageDelta> deltas() const;
136 #endif
137     };
138     ///////////////////////////////////////////////////////////////////
139
140     /////////////////////////////////////////////////////////////////
141   } // namespace detail
142   ///////////////////////////////////////////////////////////////////
143   /////////////////////////////////////////////////////////////////
144 } // namespace zypp
145 ///////////////////////////////////////////////////////////////////
146 #endif // ZYPP_DETAIL_PACKAGEIMPLIF_H