]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/edsp/edsplistparser.h
close server if parsing of header field failed
[apt.git] / apt-pkg / edsp / edsplistparser.h
index 3e196cb9a3adf4be9af983290b7518cfc4be9597..7cd5ab2b36ef5d921fcfade24910ecfa2ccaafb7 100644 (file)
 #define PKGLIB_EDSPLISTPARSER_H
 
 #include <apt-pkg/deblistparser.h>
+#include <apt-pkg/md5.h>
+#include <apt-pkg/pkgcache.h>
+#include <apt-pkg/fileutl.h>
+
+#include <string>
+
+#ifndef APT_8_CLEANER_HEADERS
 #include <apt-pkg/pkgcachegen.h>
 #include <apt-pkg/indexfile.h>
 #include <apt-pkg/tagfile.h>
+#endif
 
-class edspListParser : public debListParser
+class APT_HIDDEN edspLikeListParser : public debListParser
 {
    public:
-   virtual bool NewVersion(pkgCache::VerIterator &Ver);
-   virtual std::string Description();
-   virtual std::string DescriptionLanguage();
-   virtual MD5SumValue Description_md5();
-   virtual unsigned short VersionHash();
+   virtual bool NewVersion(pkgCache::VerIterator &Ver) APT_OVERRIDE;
+   virtual std::vector<std::string> AvailableDescriptionLanguages() APT_OVERRIDE;
+   virtual MD5SumValue Description_md5() APT_OVERRIDE;
+   virtual unsigned short VersionHash() APT_OVERRIDE;
 
-   bool LoadReleaseInfo(pkgCache::PkgFileIterator &FileI,FileFd &File,
-                       std::string section);
+   bool LoadReleaseInfo(pkgCache::RlsFileIterator &FileI,FileFd &File,
+                       std::string const &section);
 
-   edspListParser(FileFd *File, std::string const &Arch = "");
+   edspLikeListParser(FileFd *File);
+   virtual ~edspLikeListParser();
+};
 
-   protected:
-   virtual bool ParseStatus(pkgCache::PkgIterator &Pkg,pkgCache::VerIterator &Ver);
+class APT_HIDDEN edspListParser : public edspLikeListParser
+{
+   FileFd extendedstates;
+   FileFd preferences;
 
-};
+protected:
+   virtual bool ParseStatus(pkgCache::PkgIterator &Pkg,pkgCache::VerIterator &Ver) APT_OVERRIDE;
 
+public:
+   edspListParser(FileFd *File);
+   virtual ~edspListParser();
+};
 #endif