#ifndef PKGLIB_INDEXRECORDS_H
#define PKGLIB_INDEXRECORDS_H
-
-#include <apt-pkg/pkgcache.h>
-#include <apt-pkg/fileutl.h>
#include <apt-pkg/hashes.h>
#include <map>
#include <vector>
+#include <ctime>
+#include <string>
+
+#ifndef APT_8_CLEANER_HEADERS
+#include <apt-pkg/fileutl.h>
+#endif
+#ifndef APT_10_CLEANER_HEADERS
+#include <apt-pkg/pkgcache.h>
+#endif
class indexRecords
{
- bool parseSumData(const char *&Start, const char *End, string &Name,
- string &Hash, size_t &Size);
+ APT_HIDDEN bool parseSumData(const char *&Start, const char *End, std::string &Name,
+ std::string &Hash, unsigned long long &Size);
public:
struct checkSum;
- string ErrorText;
+ std::string ErrorText;
+ // dpointer (for later9
+ void * d;
protected:
- string Dist;
- string Suite;
- string ExpectedDist;
- std::map<string,checkSum *> Entries;
+ std::string Dist;
+ std::string Suite;
+ std::string ExpectedDist;
+ time_t ValidUntil;
+ bool SupportsAcquireByHash;
+
+ std::map<std::string,checkSum *> Entries;
public:
indexRecords();
- indexRecords(const string ExpectedDist);
+ indexRecords(const std::string ExpectedDist);
// Lookup function
- virtual const checkSum *Lookup(const string MetaKey);
+ virtual checkSum *Lookup(const std::string MetaKey);
+ /** \brief tests if a checksum for this file is available */
+ bool Exists(std::string const &MetaKey) const;
std::vector<std::string> MetaKeys();
- virtual bool Load(string Filename);
- string GetDist() const;
- virtual bool CheckDist(const string MaybeDist) const;
- string GetExpectedDist() const;
+ virtual bool Load(std::string Filename);
+ std::string GetDist() const;
+ std::string GetSuite() const;
+ bool GetSupportsAcquireByHash() const;
+ time_t GetValidUntil() const;
+ virtual bool CheckDist(const std::string MaybeDist) const;
+ std::string GetExpectedDist() const;
virtual ~indexRecords(){};
};
+#if __GNUC__ >= 4
+ // ensure that con- & de-structor don't trigger this warning
+ #pragma GCC diagnostic push
+ #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
+#endif
struct indexRecords::checkSum
{
- string MetaKeyFilename;
- HashString Hash;
- size_t Size;
+ std::string MetaKeyFilename;
+ HashStringList Hashes;
+ unsigned long long Size;
+
+ APT_DEPRECATED HashString Hash;
};
+#if __GNUC__ >= 4
+ #pragma GCC diagnostic pop
+#endif
#endif