Я работаю над заменой данных в файле (это большой файл размером 400 МБ) с помощью верблюда, и я столкнулся с проблемой, когда другой файл захвата потребителя, даже если файл используется (он находится в режиме записи).
Есть ли способ в Camel заблокировать файл, который находится в режиме записи, чтобы другой потребитель/маршрут не мог его использовать. Он должен потребляться после завершения записи. Я пробовал с readLocks, но пока безуспешно.
from("file://A").split().tokenize("\n", 999).streaming()
.log("Spliting::::::::::").unmarshal(csv).bean("transferDate", "enrich")
.marshal(csv).to("file://B?fileExist=Append");
from("file://B?delete=true").to("file://A"); // this route pick up file even the first route haven't finished writing file completely