Это то, что я хочу сделать, и я использую для этого JSch:
- скопировать файл A с сервера S1 на сервер S2
- когда это будет сделано, выполните некоторую логику (например, отправьте электронное письмо о завершении задачи)
Чего я не знаю:
- JSch выполняет запись в новом потоке или нет? Что сбивает с толку, так это тот факт, что ChannelSftp реализует Runnable, поэтому потенциально запускается как отдельный поток.
Если он запускает его в отдельном потоке, то я не могу добавить свой код после метода put
, но вместо этого нужно потенциально использовать SftpProgressMonitor
(может быть?!).
К сожалению, я не смог найти в их документации ничего о том, как будет выполняться вызов put
или любых других методов - синхронно или асинхронно.