하나의 입력을 받아서 Splitter와 비슷한 여러 개의 출력 메시지를 생성하는 Camel Component/Processor를 구현하려고합니다. 스플리터와 마찬가지로 출력은 경로의 다음 프로세서/엔드 포인트로 이동해야합니다.Camel Processor/Component에서 여러 개의 출력 생성
Splitter & MulticastProcessor 클래스를 재사용하거나 유사한 논리를 사용할 수 있기를 기대합니다. 이해할 수 있듯이이 아이디어는 각 출력에 대해 새 Exchange를 만들어서 내보내는 것입니다. 이렇게하려면 출력이 기록되는 끝점을 제공해야합니다. 프로세서 클래스에서 끝점을 동적으로 만들면이 작업이 가능합니다. 내 요구 사항은 경로를 구성된 끝점으로 출력을 보내는 것입니다. 아래 경로에서 mycomponent는 file : 출력에 (여러 번) 작성해야합니다.
<route>
<from uri="file:input"/>
<to uri="mycomponent:OrderFlow?multi.output=true"/>
<to uri="file:output" />
</route>
스플리터의 경우 출력 프로세서/끝점에 대한 액세스 권한이있는 SplitDefinition 클래스로 인스턴스화됩니다.
a) 프로세서 내에서 구성된 출력 프로세서/종단점에 액세스 할 수 있습니까?
b) 그렇지 않다면 프로세서 용 ProcessorDefinition 클래스를 작성해야합니까? 이것에 대한 어떤 조언도 도움이 될 것입니다. 페터 아래 제안
두 솔루션은
가)) 프로듀서 템플릿 B를 주입하는 대신 새 구성 요소를 작성하는 방법 호출로 사용 분배기 구성 요소입니다.
귀하의 요구 사항을 다시 말해 주시겠습니까? –