376장. Cryostat 언어
Camel 버전 1.1에서 사용 가능
Camel은 DSL 또는 Cryostat 구성에서 Expression 또는 Predicate를 사용할 수 있도록 Cryostat 를 지원합니다. 예를 들어 Cryostat를 사용하여 메시지 필터 에서 또는 수신자 목록의 표현식으로 Predicate를 만들 수 있습니다.
Streams
				메시지 본문이 스트림 기반인 경우 수신되는 입력이 스트림으로 Camel에 제출됨을 의미합니다. 즉, 스트림의 내용을 한 번만 읽을 수 있습니다. 따라서 Cryostat를 메시지 필터 또는 콘텐츠 기반 라우터로 사용하는 경우 여러 번 데이터에 액세스해야 하며 Stream Caching을 사용하거나 메시지 본문을 여러 번 다시 읽기 전에 문자열로 변환해야 합니다. ??? 
			
from("queue:foo").
  filter().xpath("//foo")).
  to("queue:bar")
from("queue:foo").
  filter().xpath("//foo")).
  to("queue:bar")
from("queue:foo").
  choice().xpath("//foo")).to("queue:bar").
  otherwise().to("queue:others");
from("queue:foo").
  choice().xpath("//foo")).to("queue:bar").
  otherwise().to("queue:others");
376.1. Cryostat 언어 옵션 링크 복사링크가 클립보드에 복사되었습니다!
Cryostat 언어는 아래에 나열된 9 가지 옵션을 지원합니다.
| 이름 | Default | Java 유형 | 설명 | 
|---|---|---|---|
|   documentType  |   
									  |   문서 유형 클래스 이름: 기본값은 org.w3c.dom.Document입니다.  | |
|   resultType  |   
									  |   
									  |   결과 형식의 클래스 이름(출력에서 입력)을 설정합니다. 기본 결과 유형은 NodeSet입니다.  | 
|   Saxon  |   
									  |   
									  |   Saxon을 사용할 지 여부입니다.  | 
|   factoryRef  |   
									  |   레지스트리에서 조회하기 위한 사용자 지정 CryostatFactory 참조  | |
|   objectModel  |   
									  |   사용할 Cryostat 오브젝트 모델입니다.  | |
|   logNamespaces  |   
									  |   
									  |   문제 발생 시 지원할 수 있는 네임스페이스를 로깅할지 여부  | 
|   headerName  |   
									  |   메시지 본문 대신 입력으로 사용할 헤더의 이름입니다.  | |
|   threadSafety  |   
									  |   
									  |   xpath 표현식의 반환된 결과에 대해 thread- Cryostat를 활성화할지 여부입니다. 이는 결과 유형으로 NODESET을 사용할 때 적용되며 반환된 세트에는 여러 요소가 있습니다. 이 상황에서는 Camel Splitter EIP와 같이 병렬 처리 모드에서 NODESET을 동시에 처리하는 경우 스레드 문제가 있을 수 있습니다. 이 옵션은 노드의 방어 복사본을 수행하여 동시성 문제를 방지합니다. 애플리케이션에서 camel-saxon 또는 Saxon을 사용하는 경우 이 옵션을 켜는 것이 좋습니다. Saxon에는 이 옵션을 활성화하여 방지할 수 있는 스레드 문제가 있습니다.  | 
|   Trim  |   
									  |   
									  |   선행 공백 및 줄 바꿈을 제거하는 값을 트리밍할지 여부  |