Helpviewer/Network/FileAccessHandler.py

changeset 2063
2227d4cc905e
child 2302
f29e9405c851
equal deleted inserted replaced
2062:f275d3afe038 2063:2227d4cc905e
1 # -*- coding: utf-8 -*-
2
3 # Copyright (c) 2012 Detlev Offenbach <detlev@die-offenbachs.de>
4 #
5
6 """
7 Module implementing a scheme access handler for file.
8 """
9
10 from PyQt4.QtCore import QFileInfo
11 from PyQt4.QtNetwork import QNetworkAccessManager
12
13 from .SchemeAccessHandler import SchemeAccessHandler
14 from .FileReply import FileReply
15
16
17 class FileAccessHandler(SchemeAccessHandler):
18 """
19 Class implementing a scheme access handler for FTP.
20 """
21 def __init__(self, parent=None):
22 """
23 Constructor
24
25 @param parent reference to the parent object (QObject)
26 """
27 super().__init__(parent)
28
29 def createRequest(self, op, request, outgoingData=None):
30 """
31 Protected method to create a request.
32
33 @param op the operation to be performed (QNetworkAccessManager.Operation)
34 @param request reference to the request object (QNetworkRequest)
35 @param outgoingData reference to an IODevice containing data to be sent
36 (QIODevice)
37 @return reference to the created reply object (QNetworkReply)
38 """
39 if op == QNetworkAccessManager.GetOperation:
40 fileInfo = QFileInfo(request.url().toLocalFile())
41 if not fileInfo.isDir() or \
42 not fileInfo.isReadable() or \
43 not fileInfo.exists():
44 return None
45 return FileReply(request.url(), self.parent())
46 else:
47 return None

eric ide

mercurial