mirror of
https://github.com/Hopiu/linkchecker.git
synced 2026-04-25 08:34:43 +00:00
split and fix initialization of UrlData objects
git-svn-id: https://linkchecker.svn.sourceforge.net/svnroot/linkchecker/trunk/linkchecker@2622 e7d03fd6-7b0d-0410-9947-9c21f3af8025
This commit is contained in:
parent
cd32e823df
commit
d2107c7a6a
4 changed files with 21 additions and 19 deletions
|
|
@ -83,18 +83,16 @@ class FileUrl (urlbase.UrlBase):
|
|||
Url link with file scheme.
|
||||
"""
|
||||
|
||||
def __init__ (self, base_url, recursion_level, consumer,
|
||||
parent_url = None,
|
||||
base_ref = None, line=0, column=0, name=u""):
|
||||
def init (self, base_ref, base_url, parent_url, recursion_level,
|
||||
consumer, line, column, name):
|
||||
"""
|
||||
Besides the usual initialization the URL is normed according
|
||||
to the platform:
|
||||
- the base URL is made an absolute file:// URL
|
||||
- under Windows platform the drive specifier is normed
|
||||
"""
|
||||
super(FileUrl, self).__init__(base_url, recursion_level, consumer,
|
||||
parent_url=parent_url, base_ref=base_ref,
|
||||
line=line, column=column, name=name)
|
||||
super(FileUrl, self).init(base_ref, base_url, parent_url,
|
||||
recursion_level, consumer, line, column, name)
|
||||
base_url = self.base_url
|
||||
if not (parent_url or base_ref or base_url.startswith("file:")):
|
||||
base_url = os.path.expanduser(base_url)
|
||||
|
|
|
|||
|
|
@ -38,15 +38,11 @@ class FtpUrl (internpaturl.InternPatternUrl, proxysupport.ProxySupport):
|
|||
Url link with ftp scheme.
|
||||
"""
|
||||
|
||||
def __init__ (self, base_url, recursion_level, consumer,
|
||||
parent_url = None,
|
||||
base_ref = None, line=0, column=0, name=u""):
|
||||
def reset (self):
|
||||
"""
|
||||
Initialize FTP url data.
|
||||
"""
|
||||
super(FtpUrl, self).__init__(base_url, recursion_level, consumer,
|
||||
parent_url=parent_url, base_ref=base_ref,
|
||||
line=line, column=column, name=name)
|
||||
super(FtpUrl, self).reset()
|
||||
# list of files for recursion
|
||||
self.files = []
|
||||
# last part of URL filename
|
||||
|
|
|
|||
|
|
@ -51,14 +51,11 @@ class HttpUrl (internpaturl.InternPatternUrl, proxysupport.ProxySupport):
|
|||
Url link with http scheme.
|
||||
"""
|
||||
|
||||
def __init__ (self, base_url, recursion_level, consumer,
|
||||
parent_url=None, base_ref=None, line=0, column=0, name=u""):
|
||||
def reset (self):
|
||||
"""
|
||||
Initialize basic url data and HTTP specific variables.
|
||||
Initialize HTTP specific variables.
|
||||
"""
|
||||
super(HttpUrl, self).__init__(base_url, recursion_level, consumer,
|
||||
parent_url=parent_url, base_ref=base_ref, line=line,
|
||||
column=column, name=name)
|
||||
super(HttpUrl, self).reset()
|
||||
self.max_redirects = 5
|
||||
self.has301status = False
|
||||
self.no_anchor = False # remove anchor in request url
|
||||
|
|
|
|||
|
|
@ -112,6 +112,17 @@ class UrlBase (object):
|
|||
@param column: column number of url in parent content
|
||||
@param name: name of url or empty
|
||||
"""
|
||||
self.init(base_ref, base_url, parent_url, recursion_level,
|
||||
consumer, line, column, name)
|
||||
self.reset()
|
||||
self.check_syntax()
|
||||
|
||||
|
||||
def init (self, base_ref, base_url, parent_url, recursion_level,
|
||||
consumer, line, column, name):
|
||||
"""
|
||||
Initialize internal data.
|
||||
"""
|
||||
self.base_ref = base_ref
|
||||
# note that self.base_url must not be modified
|
||||
self.base_url = base_url
|
||||
|
|
@ -131,6 +142,7 @@ class UrlBase (object):
|
|||
# assume file link if no scheme is found
|
||||
self.scheme = url.split(":", 1)[0] or "file"
|
||||
|
||||
def reset (self):
|
||||
# self.url is constructed by self.build_url() out of base_url
|
||||
# and (base_ref or parent) as absolute and normed url.
|
||||
# This the real url we use when checking so it also referred to
|
||||
|
|
@ -166,7 +178,6 @@ class UrlBase (object):
|
|||
# cache keys, are set by build_url() calling set_cache_keys()
|
||||
self.cache_url_key = None
|
||||
self.cache_content_key = None
|
||||
self.check_syntax()
|
||||
|
||||
def set_result (self, msg, valid=True):
|
||||
"""
|
||||
|
|
|
|||
Loading…
Reference in a new issue