close server if parsing of header field failed
[apt.git] / apt-pkg / edsp / edsplistparser.h
index ef5179e68e5bba30a80b45510d59e7ddf8399799..7cd5ab2b36ef5d921fcfade24910ecfa2ccaafb7 100644 (file)
@@ -14,6 +14,7 @@
 #include <apt-pkg/deblistparser.h>
 #include <apt-pkg/md5.h>
 #include <apt-pkg/pkgcache.h>
+#include <apt-pkg/fileutl.h>
 
 #include <string>
 
 #include <apt-pkg/tagfile.h>
 #endif
 
-class FileFd;
-
-class APT_HIDDEN edspListParser : public debListParser
+class APT_HIDDEN edspLikeListParser : public debListParser
 {
-   void *d;
    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::RlsFileIterator &FileI,FileFd &File,
                        std::string const &section);
 
-   edspListParser(FileFd *File, std::string const &Arch = "");
-   virtual ~edspListParser();
+   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