close server if parsing of header field failed
[apt.git] / apt-pkg / edsp / edspindexfile.h
index 9670c4837d6c540bff1ef3e85c820ccc64b41c80..26bd1232b7d8a575b5ba1e0d221d4164225798d4 100644 (file)
@@ -9,19 +9,41 @@
 #define PKGLIB_EDSPINDEXFILE_H
 
 #include <apt-pkg/debindexfile.h>
+#include <string>
 
-class edspIndex : public debStatusIndex
+#ifndef APT_8_CLEANER_HEADERS
+#include <apt-pkg/indexfile.h>
+#endif
+
+class OpProgress;
+class pkgCacheGenerator;
+
+class APT_HIDDEN edspLikeIndex : public pkgDebianIndexRealFile
 {
-   /** \brief dpointer placeholder (for later in case we need it) */
-   void *d;
+protected:
+   virtual bool OpenListFile(FileFd &Pkg, std::string const &File) APT_OVERRIDE;
+   virtual uint8_t GetIndexFlags() const APT_OVERRIDE;
+   virtual std::string GetArchitecture() const APT_OVERRIDE;
 
-   public:
+public:
+   virtual bool Exists() const APT_OVERRIDE;
+   virtual bool HasPackages() const APT_OVERRIDE;
 
-   virtual const Type *GetType() const;
+   edspLikeIndex(std::string const &File);
+   virtual ~edspLikeIndex();
+};
+
+class APT_HIDDEN edspIndex : public edspLikeIndex
+{
+protected:
+   APT_HIDDEN virtual pkgCacheListParser * CreateListParser(FileFd &Pkg) APT_OVERRIDE;
+   virtual std::string GetComponent() const APT_OVERRIDE;
 
-   virtual bool Merge(pkgCacheGenerator &Gen,OpProgress *Prog) const;
+public:
+   virtual const Type *GetType() const APT_OVERRIDE APT_CONST;
 
-   edspIndex(std::string File);
+   edspIndex(std::string const &File);
+   virtual ~edspIndex();
 };
 
 #endif