342.5. 집계

INFO:이 집계 전략을 사용하려면 즉시 완료 검사가 필요합니다.

이 예제에서는 입력 디렉토리에 있는 모든 텍스트 파일을 출력 디렉터리에 저장된 단일 Tar File으로 집계합니다. 

   from("file:input/directory?antInclude=*/.txt")
     .aggregate(new TarAggregationStrategy())
       .constant(true)
       .completionFromBatchConsumer()
       .eagerCheckCompletion()
   .to("file:output/directory");

발신되는 CamelFileName 메시지 헤더는 java.io.File.createTempFile 접미사와 함께 java.io.File.createTempFile을 사용하여 생성됩니다. 이 동작을 재정의하려면 경로에서 CamelFileName 헤더 값을 명시적으로 설정할 수 있습니다.

   from("file:input/directory?antInclude=*/.txt")
     .aggregate(new TarAggregationStrategy())
       .constant(true)
       .completionFromBatchConsumer()
       .eagerCheckCompletion()
     .setHeader(Exchange.FILE_NAME, constant("reports.tar"))
   .to("file:output/directory");