src/eric7/RemoteServer/EricServerFileSystemRequestHandler.py

branch
server
changeset 10548
d3e21f44887b
parent 10546
300487f5f517
child 10555
08e853c0c77b
equal deleted inserted replaced
10547:a357729cb749 10548:d3e21f44887b
113 """ 113 """
114 directory = params["directory"] 114 directory = params["directory"]
115 if not directory: 115 if not directory:
116 directory = os.getcwd() 116 directory = os.getcwd()
117 117
118 listing = [] 118 try:
119 for dirEntry in os.scandir(directory): 119 listing = []
120 filestat = dirEntry.stat() 120 for dirEntry in os.scandir(directory):
121 entry = { 121 filestat = dirEntry.stat()
122 "name": dirEntry.name, 122 entry = {
123 "path": dirEntry.path, 123 "name": dirEntry.name,
124 "is_dir": dirEntry.is_dir(), 124 "path": dirEntry.path,
125 "is_file": dirEntry.is_file(), 125 "is_dir": dirEntry.is_dir(),
126 "is_link": dirEntry.is_symlink(), 126 "is_file": dirEntry.is_file(),
127 "mode": filestat.st_mode, 127 "is_link": dirEntry.is_symlink(),
128 "mode_str": stat.filemode(filestat.st_mode), 128 "mode": filestat.st_mode,
129 "size": filestat.st_size, 129 "mode_str": stat.filemode(filestat.st_mode),
130 "mtime": time.strftime( 130 "size": filestat.st_size,
131 "%Y-%m-%d %H:%M:%S", time.localtime(filestat.st_mtime) 131 "mtime": time.strftime(
132 ), 132 "%Y-%m-%d %H:%M:%S", time.localtime(filestat.st_mtime)
133 } 133 ),
134 listing.append(entry) 134 }
135 135 listing.append(entry)
136 return { 136
137 "directory": directory, 137 return {
138 "listing": listing, 138 "ok": True,
139 "separator": os.sep, 139 "directory": directory,
140 } 140 "listing": listing,
141 "separator": os.sep,
142 }
143 except OSError as err:
144 return {
145 "ok": False,
146 "error": str(err),
147 }
141 148
142 def __stat(self, params): 149 def __stat(self, params):
143 """ 150 """
144 Private method to get the status of a file. 151 Private method to get the status of a file.
145 152

eric ide

mercurial