2017-11-02 6 views
-1

낙타 경로 :카멜은 여러 개의 from 문에서 이전 (소스) 파이프 라인을 이해할 수 있습니까?

from("file://" + REST_FILES + "?idempotent=true") 
    .from("file://" + FTP_FILES + "?idempotent=true") 
    .process(new Processor() { 
     @Override 
     public void process(Exchange exchange) { 
     } 

process 방법 안에 이해하는 것이 가능은 - 교환 REST_FILES 또는 FTP_FILES로부터 얻은 것?

+0

이와 같은 경로에서 'from'을 여러 개 사용할 수 없습니다. – pvpkiran

+0

@pvpkiran 왜 작동합니까? – gstackoverflow

답변

1

나는 유지 보수 및 테스트 관점에서 이것을 세 가지 경로로 나누는 것이 더 좋을 것이라고 생각합니다.

경로 1은 첫 번째 파일 끝점에서 수신하여 처리를 수행하는 새 경로로 보냅니다.

경로 2는 첫 번째 파일 끝점에서 수신하여 처리를 수행하는 새 경로로 보냅니다.

새 경로 인 Route 3이 실제 처리를 수행합니다.

그런 다음 경로 1과 2에서 Exchange 속성을 설정하여 메시지의 출처 경로를 식별 한 다음 경로 3에서 해당 속성을 기반으로 수행 할 작업을 결정할 수 있습니다.

관련 문제