diff options
author | willmcgugan <willmcgugan@67cdc799-7952-0410-af00-57a81ceafa0f> | 2010-12-16 20:27:04 +0000 |
---|---|---|
committer | willmcgugan <willmcgugan@67cdc799-7952-0410-af00-57a81ceafa0f> | 2010-12-16 20:27:04 +0000 |
commit | b3a9c67cad59b3a90b6ddf91b7aaccba52328745 (patch) | |
tree | cbd76cfe81f15e8436b427b9488199b734fd42cd /fs/ftpfs.py | |
parent | 46340fbf6a98d6ccbabcebf1d184d1bb0e5c08d1 (diff) | |
download | pyfilesystem-b3a9c67cad59b3a90b6ddf91b7aaccba52328745.tar.gz |
Command improvements
git-svn-id: http://pyfilesystem.googlecode.com/svn/trunk@554 67cdc799-7952-0410-af00-57a81ceafa0f
Diffstat (limited to 'fs/ftpfs.py')
-rw-r--r-- | fs/ftpfs.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/fs/ftpfs.py b/fs/ftpfs.py index aa0eec4..43cbda6 100644 --- a/fs/ftpfs.py +++ b/fs/ftpfs.py @@ -1035,6 +1035,15 @@ class FTPFS(FS): pass self.closed = True + def getpathurl(self, path, allow_none=False): + path = normpath(path) + credentials = '%s:%s' % (self.user, self.passwd) + if credentials == ':': + url = 'ftp://%s%s' % (self.host.rstrip('/'), abspath(path)) + else: + url = 'ftp://%s@%s%s' % (credentials, self.host.rstrip('/'), abspath(path)) + return url + @ftperrors def open(self, path, mode='r'): mode = mode.lower() @@ -1249,6 +1258,9 @@ class FTPFS(FS): @ftperrors def desc(self, path): + url = self.getpathurl(path, allow_none=True) + if url: + return url dirlist, fname = self._check_path(path) if fname not in dirlist: raise ResourceNotFoundError(path) |