Helpviewer/Network/FileAccessHandler.py

Sun, 18 May 2014 14:13:09 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 18 May 2014 14:13:09 +0200
changeset 3591
2f2a4a76dd22
parent 3178
f25fc1364c88
child 3656
441956d8fce5
permissions
-rw-r--r--

Corrected a bunch of source docu issues.

2063
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
3160
209a07d7e401 Updated copyright for 2014.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3002
diff changeset
3 # Copyright (c) 2012 - 2014 Detlev Offenbach <detlev@die-offenbachs.de>
2063
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a scheme access handler for file.
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
3145
a9de05d4a22f # __IGNORE_WARNING__ added/ removed.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 3057
diff changeset
10 from __future__ import unicode_literals
2525
8b507a9a2d40 Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2403
diff changeset
11
2063
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 from PyQt4.QtCore import QFileInfo
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 from PyQt4.QtNetwork import QNetworkAccessManager
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15 from .SchemeAccessHandler import SchemeAccessHandler
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 class FileAccessHandler(SchemeAccessHandler):
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 """
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 Class implementing a scheme access handler for FTP.
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 """
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 def __init__(self, parent=None):
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 """
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 Constructor
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 @param parent reference to the parent object (QObject)
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 """
2525
8b507a9a2d40 Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2403
diff changeset
28 super(FileAccessHandler, self).__init__(parent)
2063
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 def createRequest(self, op, request, outgoingData=None):
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 """
3591
2f2a4a76dd22 Corrected a bunch of source docu issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3178
diff changeset
32 Public method to create a request.
2063
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33
3002
6ffc581f00f1 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2403
diff changeset
34 @param op the operation to be performed
6ffc581f00f1 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2403
diff changeset
35 (QNetworkAccessManager.Operation)
2063
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 @param request reference to the request object (QNetworkRequest)
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 @param outgoingData reference to an IODevice containing data to be sent
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 (QIODevice)
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 @return reference to the created reply object (QNetworkReply)
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 """
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 if op == QNetworkAccessManager.GetOperation:
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 fileInfo = QFileInfo(request.url().toLocalFile())
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 if not fileInfo.isDir() or \
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 not fileInfo.isReadable() or \
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 not fileInfo.exists():
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 return None
2403
e3d7a861547c Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
47 from .FileReply import FileReply
2063
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 return FileReply(request.url(), self.parent())
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 else:
2227d4cc905e Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 return None

eric ide

mercurial