2.5. 교환 인스턴스 생성

2.5.1. 개요

Java 코드를 사용하여 메시지를 처리할 때(예: Quarkus 클래스 또는 프로세서 클래스에서) 새 교환 인스턴스를 생성해야 하는 경우가 많습니다. Exchange 개체를 만들어야 하는 경우 여기에 설명된 대로 가장 쉬운 방법은 ExchangeBuilder 클래스의 메서드를 호출하는 것입니다.

2.5.2. ExchangeBuilder 클래스

ExchangeBuilder 클래스의 정규화된 이름은 다음과 같습니다.

org.apache.camel.builder.ExchangeBuilder

ExchangeBuilder 는 exchange 개체 빌드 를 시작하는 데 사용할 수 있는Exchange 를 통해 정적 메서드를 노출합니다.

2.5.3. 예제

예를 들어 다음 코드는 메시지 본문 문자열, Hello World!, 사용자 이름 및 암호 인증 정보가 포함된 헤더를 포함하는 새 교환 오브젝트를 생성합니다.

// Java
import org.apache.camel.Exchange;
import org.apache.camel.builder.ExchangeBuilder;
...
Exchange exch = ExchangeBuilder.anExchange(camelCtx)
                    .withBody("Hello World!")
                    .withHeader("username", "jdoe")
                    .withHeader("password", "pass")
                    .build();

2.5.4. ExchangeBuilder 방법

ExchangeBuilder 클래스는 다음 메서드를 지원합니다.

ExchangeBuilder anExchange(CamelContext 컨텍스트)
(static 메서드) 교환 오브젝트를 빌드합니다.
Exchange build()
교환을 빌드합니다.
ExchangeBuilder withBody(오브젝트 본문)
교환에 메시지 본문을 설정합니다(즉, 교환의 메시지 본문을 설정).
Header(문자열 키, 오브젝트 값)를 사용한 ExchangeBuilder
교환에 헤더를 설정합니다(즉, 교환의 In 메시지에 헤더를 설정).
ExchangeBuilder withPattern(ExchangePattern 패턴)
교환에 대한 교환 패턴을 설정합니다.
ExchangeBuilder withProperty(문자열 키, 오브젝트 값)
교환에 속성을 설정합니다.