В FAQ для jpathwatch автор говорит, что вы будете регулярно получать событие ENTRY_MODIFY, когда файл записывается, и это событие перестает генерироваться, когда запись файла завершена. Он предлагает вам сохранить список файлов и отметку времени для последнего сгенерированного события для каждого файла.
Через некоторый интервал (который он называет тайм-аутом) вы просматриваете список файлов и их временные метки. Если у какого-либо файла есть отметка времени, которая старше вашего интервала ожидания, это должно означать, что он больше не обновляется и, вероятно, завершен.
Он даже предлагает вам попытаться определить скорость роста файла и рассчитать, когда он должен завершиться, чтобы вы могли установить время опроса на ожидаемую продолжительность завершения.
Это все проясняет? Извините, я не могу выразить это в коде:)