src/eric7/EricNetwork/EricUrlInfo.py

branch
eric7
changeset 9209
b99e7fd55fd3
parent 8881
54e42bc2437a
child 9221
bf71ee032bb4
equal deleted inserted replaced
9208:3fc8dfeb6ebe 9209:b99e7fd55fd3
1 # -*- coding: utf-8 -*-
2
3 # Copyright (c) 2012 - 2022 Detlev Offenbach <detlev@die-offenbachs.de>
4 #
5
6 """
7 Module implementing a class replacing QUrlInfo.
8 """
9
10 import enum
11
12 from PyQt6.QtCore import QDateTime
13
14
15 class EricUrlPermission(enum.IntEnum):
16 """
17 Class defining the URL permissions.
18 """
19 READ_OWNER = 0o0400
20 WRITE_OWNER = 0o0200
21 EXE_OWNER = 0o0100
22 READ_GROUP = 0o0040
23 WRITE_GROUP = 0o0020
24 EXE_GROUP = 0o0010
25 READ_OTHER = 0o0004
26 WRITE_OTHER = 0o0002
27 EXE_OTHER = 0o0001
28
29
30 class EricUrlInfo:
31 """
32 Class implementing a replacement for QUrlInfo.
33 """
34 def __init__(self):
35 """
36 Constructor
37 """
38 self.__valid = False
39
40 self.__permissions = 0
41 self.__size = 0
42 self.__isDir = False
43 self.__isFile = True
44 self.__isSymlink = False
45 self.__isWritable = True
46 self.__isReadable = True
47 self.__isExecutable = False
48 self.__name = ""
49 self.__owner = ""
50 self.__group = ""
51 self.__lastModified = QDateTime()
52 self.__lastRead = QDateTime()
53
54 def isValid(self):
55 """
56 Public method to check the validity of the object.
57
58 @return flag indicating validity (boolean)
59 """
60 return self.__valid
61
62 def setName(self, name):
63 """
64 Public method to set the name.
65
66 @param name name to be set (string)
67 """
68 self.__name = name
69 self.__valid = True
70
71 def setPermissions(self, permissions):
72 """
73 Public method to set the permissions.
74
75 @param permissions permissions to be set (integer)
76 """
77 self.__permissions = permissions
78 self.__valid = True
79
80 def setDir(self, isDir):
81 """
82 Public method to indicate a directory.
83
84 @param isDir flag indicating a directory (boolean)
85 """
86 self.__isDir = isDir
87 self.__valid = True
88
89 def setFile(self, isFile):
90 """
91 Public method to indicate a file.
92
93 @param isFile flag indicating a file (boolean)
94 """
95 self.__isFile = isFile
96 self.__valid = True
97
98 def setSymLink(self, isSymLink):
99 """
100 Public method to indicate a symbolic link.
101
102 @param isSymLink flag indicating a symbolic link (boolean)
103 """
104 self.__isSymLink = isSymLink
105 self.__valid = True
106
107 def setOwner(self, owner):
108 """
109 Public method to set the owner.
110
111 @param owner owner to be set (string)
112 """
113 self.__owner = owner
114 self.__valid = True
115
116 def setGroup(self, group):
117 """
118 Public method to set the group.
119
120 @param group group to be set (string)
121 """
122 self.__group = group
123 self.__valid = True
124
125 def setSize(self, size):
126 """
127 Public method to set the size.
128
129 @param size size to be set (integer)
130 """
131 self.__size = size
132 self.__valid = True
133
134 def setWritable(self, isWritable):
135 """
136 Public method to a writable entry.
137
138 @param isWritable flag indicating a writable entry (boolean)
139 """
140 self.__isWritable = isWritable
141 self.__valid = True
142
143 def setReadable(self, isReadable):
144 """
145 Public method to a readable entry.
146
147 @param isReadable flag indicating a readable entry (boolean)
148 """
149 self.__isReadable = isReadable
150 self.__valid = True
151
152 def setLastModified(self, dt):
153 """
154 Public method to set the last modified date and time.
155
156 @param dt date and time to set (QDateTime)
157 """
158 self.__lastModified = QDateTime(dt)
159 self.__valid = True
160
161 def setLastRead(self, dt):
162 """
163 Public method to set the last read date and time.
164
165 @param dt date and time to set (QDateTime)
166 """
167 self.__lastRead = QDateTime(dt)
168 self.__valid = True
169
170 def name(self):
171 """
172 Public method to get the name.
173
174 @return name (string)
175 """
176 return self.__name
177
178 def permissions(self):
179 """
180 Public method to get the permissions.
181
182 @return permissions (integer)
183 """
184 return self.__permissions
185
186 def owner(self):
187 """
188 Public method to get the owner.
189
190 @return owner (string)
191 """
192 return self.__owner
193
194 def group(self):
195 """
196 Public method to get the group.
197
198 @return group (string)
199 """
200 return self.__group
201
202 def size(self):
203 """
204 Public method to get the size.
205
206 @return size (integer)
207 """
208 return self.__size
209
210 def lastModified(self):
211 """
212 Public method to get the last modified date and time.
213
214 @return last modified date and time (QDateTime)
215 """
216 return QDateTime(self.__lastModified)
217
218 def lastRead(self):
219 """
220 Public method to get the last read date and time.
221
222 @return last read date and time (QDateTime)
223 """
224 return QDateTime(self.__lastRead)
225
226 def isDir(self):
227 """
228 Public method to test, if the entry is a directory.
229
230 @return flag indicating a directory (boolean)
231 """
232 return self.__isDir
233
234 def isFile(self):
235 """
236 Public method to test, if the entry is a file.
237
238 @return flag indicating a file (boolean)
239 """
240 return self.__isFile
241
242 def isSymLink(self):
243 """
244 Public method to test, if the entry is a symbolic link.
245
246 @return flag indicating a symbolic link (boolean)
247 """
248 return self.__isSymlink
249
250 def isWritable(self):
251 """
252 Public method to test, if the entry is writable.
253
254 @return flag indicating writable (boolean)
255 """
256 return self.__isWritable
257
258 def isReadable(self):
259 """
260 Public method to test, if the entry is readable.
261
262 @return flag indicating readable (boolean)
263 """
264 return self.__isReadable
265
266 def isExecutable(self):
267 """
268 Public method to test, if the entry is executable.
269
270 @return flag indicating executable (boolean)
271 """
272 return self.__isExecutable

eric ide

mercurial