Camel RaabitMQ Agradecimentos

Estou usando o Camel para meu aplicativo de mensagens. No meu caso de uso, tenho um produtor (que é o RabbitMQ aqui) e o Consumidor é um bean.

from("rabbitmq://127.0.0.1:5672/exDemo?queue=testQueue&username=guest&password=guest&autoAck=false&durable=true&exchangeType=direct&autoDelete=false")
                .throttle(100).timePeriodMillis(10000)
                .process(new Processor() {                              
                        @Override
                        public void process(Exchange exchange) throws Exception {
                            MyCustomConsumer.consume(exchange.getIn().getBody())
                        }
                    });

Aparentemente, quando autoAck é falso, o reconhecimento é enviado quando a execução do processo () é concluída (corrija-me se estiver errado aqui)

Agora não quero reconhecer quando a execução do processo () estiver concluída, quero fazê-lo posteriormente. eu tenho umBlockingQueue no meu MyCustomConsumer, onde consume () está colocando mensagens, e MyCustomConsumer possui um mecanismo diferente para processá-las. Quero confirmar a mensagem apenas quando MyCustomConsumer concluir o processamento de mensagens deBlockingQueue. Como posso conseguir isso?

questionAnswers(2)

yourAnswerToTheQuestion