47.7. 추가 옵션
47.7.1. 개요
extraOptions
옵션은 일반적으로 더 간단한 옵션을 제공하여 복잡한 API 매개변수를 계산하거나 숨기는 데 사용됩니다. 예를 들어 API 메서드에는 URI에서 Cryostat의 일부로 더 쉽게 제공할 수 있는 Cryostat 옵션을 사용할 수 있습니다. 구성 요소는 부분을 추가 옵션으로 추가하고 내부적으로 Cryostat 매개 변수를 생성하여 이 작업을 수행할 수 있습니다. 이러한 추가 옵션의 구현을 완료하려면 EndpointConsumer
및/또는 EndpointProducer
클래스에서 interceptProperties
메서드를 재정의해야 합니다( 46.4절. “프로그래밍 모델”참조).
47.7.2. 구문
extraOptions
요소는 다음과 같이 하나 이상의 extraOption
하위 요소로 정의할 수 있습니다.
<extraOptions> <extraOption> <type>TypeName</type> <name>OptionName</name> </extraOption> </extraOptions>
여기서 TypeName
은 추가 옵션의 정규화된 형식 이름이며 OptionName
은 추가 URI 옵션의 이름입니다.
47.7.3. 범위
다음 추출에 표시된 대로 extraOptions
요소는 선택적으로 apis
요소의 자식으로 및/또는 api
요소의 자식으로 표시될 수 있습니다.
<configuration> <apis> <api> <apiName>...</apiName> ... <extraOptions>...</extraOptions> </api> <extraOptions>...</extraOptions> ... </apis> </configuration>
다음 범위에서 extraOptions
요소를 정의할 수 있습니다.
-
api
요소의 자식으로추가Options
는api
요소에서 지정한 API 클래스에만 적용됩니다. -
apis
요소의 자식으로추가Options
는 기본적으로 모든 API 클래스에 적용되지만api
수준에서 재정의할 수 있습니다.
47.7.4. 하위 요소
각 extraOptions
요소는 다음 하위 요소로 정의할 수 있습니다.
type
- 추가 옵션의 정규화된 형식 이름을 지정합니다.
name
- 엔드포인트 URI에 표시되는 옵션 이름을 지정합니다.
47.7.5. 예
다음 예제에서는 java.util.list<String> 유형의 추가 URI 옵션
customOption
을 정의합니다.
<extraOptions> <extraOption> <type>java.util.List<String></type> <name>customOption</name> </extraOption> </extraOptions>