Чтение / запись Apache Camel в / из входного потока - PullRequest
0 голосов
/ 09 мая 2018

В настоящее время я пытаюсь использовать Apache Camel для расшифровки зашифрованного PGP-файла, который был загружен в InputStream. Текущая проблема, с которой я сталкиваюсь, заключается в том, что CamelContext, кажется, зависает после запуска, как будто он непрерывно читает из direct:is после исчерпания потока. Я следовал за Apache Camel - как использовать InputStream в качестве источника? , чтобы достичь точки возможной загрузки данного InputStream во входной канал.

    CamelContext context = new DefaultCamelContext();
    CountDownLatch latch = new CountDownLatch(1);

    context.addRoutes(new RouteBuilder() {
        public void configure() {
            from("direct:is")
                    .unmarshal().pgp(secretKeyFileName, keyUserId, keyPassword)
                    .to("direct:os")
                    .process(exchange -> latch.countDown());
        }
    });

    DefaultFluentProducerTemplate.on(context).withBody(inputStream).to("direct:is");
    DefaultFluentProducerTemplate.on(context).withBody(outputStream);
    context.start();
    latch.await();
    context.stop();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...