X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/459681d3b8093c20a39400c00bcee43d26e964c6..1b8862162eba9de28c1d0ae0082f40d4c6bbcbe3:/apt-pkg/acquire-method.h diff --git a/apt-pkg/acquire-method.h b/apt-pkg/acquire-method.h index 64cff7331..20691cc2c 100644 --- a/apt-pkg/acquire-method.h +++ b/apt-pkg/acquire-method.h @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: acquire-method.h,v 1.13 2000/01/17 07:11:49 jgg Exp $ +// $Id: acquire-method.h,v 1.15.2.1 2003/12/24 23:09:17 mdz Exp $ /* ###################################################################### Acquire Method - Method helper class + functions @@ -20,6 +20,7 @@ #pragma interface "apt-pkg/acquire-method.h" #endif +class Hashes; class pkgAcqMethod { protected: @@ -37,11 +38,15 @@ class pkgAcqMethod struct FetchResult { string MD5Sum; + string SHA1Sum; + vector GPGVOutput; time_t LastModified; bool IMSHit; string Filename; unsigned long Size; - unsigned long ResumePoint; + unsigned long ResumePoint; + + void TakeHashes(Hashes &Hash); FetchResult(); }; @@ -49,7 +54,10 @@ class pkgAcqMethod vector Messages; FetchItem *Queue; FetchItem *QueueBack; - + string FailReason; + string UsedMirror; + string IP; + // Handlers for messages virtual bool Configuration(string Message); virtual bool Fetch(FetchItem * /*Item*/) {return true;}; @@ -57,14 +65,14 @@ class pkgAcqMethod // Outgoing messages void Fail(bool Transient = false); inline void Fail(const char *Why, bool Transient = false) {Fail(string(Why),Transient);}; - void Fail(string Why, bool Transient = false); - void URIStart(FetchResult &Res); - void URIDone(FetchResult &Res,FetchResult *Alt = 0); + virtual void Fail(string Why, bool Transient = false); + virtual void URIStart(FetchResult &Res); + virtual void URIDone(FetchResult &Res,FetchResult *Alt = 0); + bool MediaFail(string Required,string Drive); virtual void Exit() {}; public: - enum CnfFlags {SingleInstance = (1<<0), Pipeline = (1<<1), SendConfig = (1<<2), LocalOnly = (1<<3), NeedsCleanup = (1<<4), @@ -74,6 +82,8 @@ class pkgAcqMethod void Status(const char *Format,...); int Run(bool Single = false); + inline void SetFailReason(string Msg) {FailReason = Msg;}; + inline void SetIP(string aIP) {IP = aIP;}; pkgAcqMethod(const char *Ver,unsigned long Flags = 0); virtual ~pkgAcqMethod() {};