@@ -255,7 +255,7 @@ def process_next_entry
255
255
# operation was successful.
256
256
def on_opendir ( response )
257
257
entry = response . request [ :entry ]
258
- raise "opendir #{ entry . remote } : #{ response } " unless response . ok?
258
+ raise StatusException . new ( response , "opendir #{ entry . remote } " ) unless response . ok?
259
259
entry . handle = response [ :handle ]
260
260
request = sftp . readdir ( response [ :handle ] , &method ( :on_readdir ) )
261
261
request [ :parent ] = entry
@@ -270,7 +270,7 @@ def on_readdir(response)
270
270
request = sftp . close ( entry . handle , &method ( :on_closedir ) )
271
271
request [ :parent ] = entry
272
272
elsif !response . ok?
273
- raise "readdir #{ entry . remote } : #{ response } "
273
+ raise StatusException . new ( response , "readdir #{ entry . remote } " )
274
274
else
275
275
response [ :names ] . each do |item |
276
276
next if item . name == "." || item . name == ".."
@@ -296,15 +296,15 @@ def open_file(entry)
296
296
def on_closedir ( response )
297
297
@active -= 1
298
298
entry = response . request [ :parent ]
299
- raise "close #{ entry . remote } : #{ response } " unless response . ok?
299
+ raise StatusException . new ( response , "close #{ entry . remote } " ) unless response . ok?
300
300
process_next_entry
301
301
end
302
302
303
303
# Called when a file has been opened. This will call #download_next_chunk
304
304
# to initiate the data transfer.
305
305
def on_open ( response )
306
306
entry = response . request [ :entry ]
307
- raise "open #{ entry . remote } : #{ response } " unless response . ok?
307
+ raise StatusException . new ( response , "open #{ entry . remote } " ) unless response . ok?
308
308
309
309
entry . handle = response [ :handle ]
310
310
entry . sink = entry . local . respond_to? ( :write ) ? entry . local : ::File . open ( entry . local , "wb" )
@@ -332,7 +332,7 @@ def on_read(response)
332
332
request = sftp . close ( entry . handle , &method ( :on_close ) )
333
333
request [ :entry ] = entry
334
334
elsif !response . ok?
335
- raise "read #{ entry . remote } : #{ response } "
335
+ raise StatusException . new ( response , "read #{ entry . remote } " )
336
336
else
337
337
entry . offset += response [ :data ] . bytesize
338
338
update_progress ( :get , entry , response . request [ :offset ] , response [ :data ] )
@@ -345,7 +345,7 @@ def on_read(response)
345
345
def on_close ( response )
346
346
@active -= 1
347
347
entry = response . request [ :entry ]
348
- raise "close #{ entry . remote } : #{ response } " unless response . ok?
348
+ raise StatusException . new ( response , "close #{ entry . remote } " ) unless response . ok?
349
349
process_next_entry
350
350
end
351
351
0 commit comments