kimse bakmiyor olsa da kodlarimiz cici olsun.
This commit is contained in:
+14
-13
@@ -37,7 +37,7 @@ import pisi.util as util
|
|||||||
import pisi.context as ctx
|
import pisi.context as ctx
|
||||||
from pisi.uri import URI
|
from pisi.uri import URI
|
||||||
|
|
||||||
class Error(pisi.Error):
|
class FetchError(pisi.Error):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
@@ -164,24 +164,25 @@ class Fetcher:
|
|||||||
self._do_grab(fileObj, dest, totalsize)
|
self._do_grab(fileObj, dest, totalsize)
|
||||||
|
|
||||||
def formatRequest(self, request):
|
def formatRequest(self, request):
|
||||||
authinfo = self.url.auth_info()
|
if self.url.auth_info():
|
||||||
if authinfo:
|
enc = encodestring("%s:%s" % self.url.auth_info())
|
||||||
enc = encodestring("%s:%s" % authinfo)
|
|
||||||
request.add_header('Authorization', 'Basic %s' % enc)
|
request.add_header('Authorization', 'Basic %s' % enc)
|
||||||
if self.existsize and self.scheme == "http" or self.scheme == "https":
|
|
||||||
range_handler = HTTPRangeHandler()
|
range_handlers = {
|
||||||
opener = urllib2.build_opener(range_handler)
|
'http' : HTTPRangeHandler,
|
||||||
urllib2.install_opener(opener)
|
'https': HTTPRangeHandler,
|
||||||
request.add_header('Range', 'bytes=%d-' % self.existsize)
|
'ftp' : FTPRangeHandler
|
||||||
if self.existsize and self.scheme =="ftp":
|
}
|
||||||
range_handler = FTPRangeHandler()
|
|
||||||
opener = urllib2.build_opener(range_handler)
|
if self.existsize and range_handlers.has_key(self.scheme):
|
||||||
|
opener = urllib2.build_opener(range_handlers.get(self.scheme)())
|
||||||
urllib2.install_opener(opener)
|
urllib2.install_opener(opener)
|
||||||
request.add_header('Range', 'bytes=%d-' % self.existsize)
|
request.add_header('Range', 'bytes=%d-' % self.existsize)
|
||||||
|
|
||||||
return request
|
return request
|
||||||
|
|
||||||
def err (self, error):
|
def err (self, error):
|
||||||
raise Error(error)
|
raise FetchError(error)
|
||||||
|
|
||||||
class HTTPRangeHandler(urllib2.BaseHandler):
|
class HTTPRangeHandler(urllib2.BaseHandler):
|
||||||
"""
|
"""
|
||||||
|
|||||||
Reference in New Issue
Block a user