]>
Commit | Line | Data |
---|---|---|
076654e7 RC |
1 | /* |
2 | * Copyright (c) 2002, Robert Collins. | |
3 | * | |
4 | * This program is free software; you can redistribute it and/or modify | |
5 | * it under the terms of the GNU General Public License as published by | |
6 | * the Free Software Foundation; either version 2 of the License, or | |
7 | * (at your option) any later version. | |
8 | * | |
9 | * A copy of the GNU General Public License can be found at | |
10 | * http://www.gnu.org/ | |
11 | * | |
12 | * Written by Robert Collins <rbtcollins@hotmail.com> | |
13 | * | |
14 | */ | |
15 | ||
16 | #ifndef _INIDBBUILDERPACKAGE_H_ | |
17 | #define _INIDBBUILDERPACKAGE_H_ | |
18 | ||
19 | #include "IniDBBuilder.h" | |
aa1e3b4d | 20 | #include <vector> |
3c196821 | 21 | #include "package_version.h" |
67829ce0 | 22 | class IniParseFeedback; |
076654e7 RC |
23 | class packagesource; |
24 | class packagemeta; | |
076654e7 RC |
25 | |
26 | class IniDBBuilderPackage:public IniDBBuilder | |
27 | { | |
28 | public: | |
67829ce0 | 29 | IniDBBuilderPackage (IniParseFeedback const &); |
076654e7 RC |
30 | virtual void buildTimestamp (String const &); |
31 | virtual void buildVersion (String const &); | |
32 | virtual void buildPackage (String const &); | |
33 | virtual void buildPackageVersion (String const &); | |
34 | virtual void buildPackageSDesc (String const &); | |
35 | virtual void buildPackageLDesc (String const &); | |
aa1e3b4d RC |
36 | virtual void buildPackageInstall (String const &); |
37 | virtual void buildPackageSource (String const &, String const &); | |
076654e7 | 38 | virtual void buildPackageTrust (int); |
076654e7 RC |
39 | virtual void buildPackageCategory (String const &); |
40 | ||
aa1e3b4d RC |
41 | virtual void buildBeginDepends (); |
42 | virtual void buildBeginPreDepends (); | |
43 | virtual void buildPriority (String const &); | |
44 | virtual void buildInstalledSize (String const &); | |
45 | virtual void buildMaintainer (String const &); | |
46 | virtual void buildArchitecture (String const &); | |
47 | virtual void buildInstallSize (String const &); | |
48 | virtual void buildInstallMD5 (unsigned char const[16]); | |
49 | virtual void buildSourceMD5 (unsigned char const[16]); | |
50 | virtual void buildBeginRecommends (); | |
51 | virtual void buildBeginSuggests (); | |
52 | virtual void buildBeginReplaces (); | |
53 | virtual void buildBeginConflicts (); | |
54 | virtual void buildBeginProvides (); | |
b1ff53ed RC |
55 | virtual void buildBeginBuildDepends (); |
56 | virtual void buildBeginBinary (); | |
aa1e3b4d RC |
57 | virtual void buildDescription (String const &); |
58 | virtual void buildSourceName (String const &); | |
59 | virtual void buildSourceNameVersion (String const &); | |
60 | virtual void buildPackageListAndNode (); | |
61 | virtual void buildPackageListOrNode (String const &); | |
62 | virtual void buildPackageListOperator (PackageSpecification::_operators const &); | |
63 | virtual void buildPackageListOperatorVersion (String const &); | |
64 | ||
076654e7 RC |
65 | private: |
66 | void add_correct_version(); | |
aa1e3b4d RC |
67 | void process_src (packagesource &src, String const &); |
68 | void setSourceSize (packagesource &src, String const &); | |
076654e7 | 69 | packagemeta *cp; |
3c196821 RC |
70 | packageversion cbpv; |
71 | packagemeta *csp; | |
72 | packageversion cspv; | |
aa1e3b4d RC |
73 | PackageSpecification *currentSpec; |
74 | vector<PackageSpecification *> *currentOrList; | |
75 | vector<vector<PackageSpecification *> *> *currentAndList; | |
076654e7 | 76 | int trust; |
67829ce0 | 77 | IniParseFeedback const &_feedback; |
076654e7 RC |
78 | }; |
79 | ||
80 | #endif /* _INIDBBUILDERPACKAGE_H_ */ |