97 urlInfo.setPermissions(permission) |
99 urlInfo.setPermissions(permission) |
98 |
100 |
99 if modeString[0] == "d": |
101 if modeString[0] == "d": |
100 urlInfo.setDir(True) |
102 urlInfo.setDir(True) |
101 urlInfo.setFile(False) |
103 urlInfo.setFile(False) |
|
104 urlInfo.setSymLink(False) |
102 elif modeString[0] == "l": |
105 elif modeString[0] == "l": |
|
106 urlInfo.setDir(False) |
|
107 urlInfo.setFile(False) |
103 urlInfo.setSymLink(True) |
108 urlInfo.setSymLink(True) |
104 elif modeString[0] == "-": |
109 elif modeString[0] == "-": |
105 urlInfo.setDir(False) |
110 urlInfo.setDir(True) |
106 urlInfo.setFile(True) |
111 urlInfo.setFile(True) |
|
112 urlInfo.setSymLink(False) |
107 |
113 |
108 def __parseUnixTime(self, monthAbbreviation, day, yearOrTime, urlInfo): |
114 def __parseUnixTime(self, monthAbbreviation, day, yearOrTime, urlInfo): |
109 """ |
115 """ |
110 Private method to parse a Unix date and time indication modifying |
116 Private method to parse a Unix date and time indication modifying |
111 the given URL info object. |
117 the given URL info object. |
269 urlInfo.setSize(int(dirOrSize)) |
275 urlInfo.setSize(int(dirOrSize)) |
270 except ValueError: |
276 except ValueError: |
271 raise FtpDirLineParserError("illegal size '{0}'".format(dirOrSize)) |
277 raise FtpDirLineParserError("illegal size '{0}'".format(dirOrSize)) |
272 urlInfo.setName(name) |
278 urlInfo.setName(name) |
273 |
279 |
|
280 ext = os.path.splitext(name.lower())[1] |
|
281 urlInfo.setSymLink(ext == ".lnk") |
|
282 |
|
283 permissions = (QUrlInfo.ReadOwner | QUrlInfo.WriteOwner |
|
284 | QUrlInfo.ReadGroup | QUrlInfo.WriteGroup |
|
285 | QUrlInfo.ReadOther | QUrlInfo.WriteOther) |
|
286 if ext in [".exe", ".com", ".bat", ".cmd"]: |
|
287 permissions |= QUrlInfo.ExeOwner | QUrlInfo.ExeGroup | QUrlInfo.ExeOther |
|
288 urlInfo.setPermissions(permissions) |
|
289 |
274 return urlInfo |
290 return urlInfo |
275 |
291 |
276 def parseLine(self, line): |
292 def parseLine(self, line): |
277 """ |
293 """ |
278 Private method to parse a directory listing line. |
294 Private method to parse a directory listing line. |