#include <apt-pkg/cacheiterators.h>
#include <apt-pkg/pkgcache.h>
+#include <memory>
#include <vector>
+#include <apt-pkg/macros.h>
+
class Configuration;
class pkgDepCache;
class pkgIndexFile;
class pkgPackageManager;
-class edspIndex;
-class APT_HIDDEN edspSystem : public pkgSystem
+class APT_HIDDEN edspLikeSystem : public pkgSystem
{
- /** \brief dpointer placeholder (for later in case we need it) */
- void *d;
+protected:
+ std::unique_ptr<pkgIndexFile> StatusFile;
+
+public:
+ virtual bool Lock() APT_OVERRIDE APT_CONST;
+ virtual bool UnLock(bool NoErrors = false) APT_OVERRIDE APT_CONST;
+ virtual pkgPackageManager *CreatePM(pkgDepCache *Cache) const APT_OVERRIDE APT_CONST;
+ virtual bool Initialize(Configuration &Cnf) APT_OVERRIDE;
+ virtual bool ArchiveSupported(const char *Type) APT_OVERRIDE APT_CONST;
+ virtual signed Score(Configuration const &Cnf) APT_OVERRIDE;
+ virtual bool FindIndex(pkgCache::PkgFileIterator File,
+ pkgIndexFile *&Found) const APT_OVERRIDE;
- edspIndex *StatusFile;
+ edspLikeSystem(char const * const Label);
+ virtual ~edspLikeSystem();
+};
- public:
+class APT_HIDDEN edspSystem : public edspLikeSystem
+{
+ std::string tempDir;
+ std::string tempStatesFile;
+ std::string tempPrefsFile;
- virtual bool Lock() APT_CONST;
- virtual bool UnLock(bool NoErrors = false) APT_CONST;
- virtual pkgPackageManager *CreatePM(pkgDepCache *Cache) const APT_CONST;
- virtual bool Initialize(Configuration &Cnf);
- virtual bool ArchiveSupported(const char *Type) APT_CONST;
- virtual signed Score(Configuration const &Cnf);
- virtual bool AddStatusFiles(std::vector<pkgIndexFile *> &List);
- virtual bool FindIndex(pkgCache::PkgFileIterator File,
- pkgIndexFile *&Found) const;
+public:
+ virtual bool Initialize(Configuration &Cnf) APT_OVERRIDE;
+ virtual bool AddStatusFiles(std::vector<pkgIndexFile *> &List) APT_OVERRIDE;
edspSystem();
virtual ~edspSystem();