48.8. 5. 메시지
Message 주석은 키 값 쌍 필드를 포함하는 모델의 클래스를 식별하는 데 사용됩니다. 이러한 유형의 형식은 주로 재무 교환 프로토콜 메시지 (FIX)에서 사용됩니다. 그럼에도 불구하고 이 주석은 데이터가 키로 식별되는 다른 모든 형식에 사용할 수 있습니다. 키 쌍 값은 탭 delimitor (unicode representation : \u0009) 또는 제목 시작(예: \u0001)과 같은 특수 문자가 될 수 있는 구분 기호로 서로 분리됩니다.
*"FIX information"*
FIX에 대한 자세한 내용은 다음 웹 사이트에서 확인할 수 있습니다 : http://www.fixprotocol.org/. FIX 메시지를 사용하려면 모델에 Order 클래스일 수 있는 루트 메시지 클래스에 연결된 헤더 및 Trailer 클래스가 포함되어 있어야 합니다. 이는 필수 사항은 아니지만 quickFix 프로젝트 http://www.quickfixj.org/ 을 기반으로 하는 Fix gateway인 camel-fix와 함께 camel-bindy를 사용할 때 매우 유용합니다.
주석 이름 | 레코드 유형 | level |
---|---|---|
메시지 | 키 값 쌍 | class |
매개변수 이름 | type | 정보 |
---|---|---|
pairSeparator | string | 필수 - '=' 또는 ';' 또는 ' anything'일 수 있습니다. |
keyValuePairSeparair | string | 필수 - '\u0001', '\u0009', '#' 또는 'anything'일 수 있습니다. |
crlf | string | 선택 사항 - 가능한 값 = WINDOWS,UNIX,MAC 또는 custom; default 값 = WINDOWS - 사용할 캐리지 리턴 문자를 정의할 수 있습니다. 앞에 나열된 세 개 이외의 값을 지정하면 입력하는 값 (custom)이 CRLF 문자로 사용됩니다. |
type | string | 선택 사항 - 메시지 유형을 정의합니다(예: FIX, EMX, …). |
version | string | 선택 사항 - 메시지의 버전 (예: 4.1) |
isOrdered | boolean | 선택 사항 - default value = false - FIX 메시지가 생성될 때 필드의 순서를 변경할 수 있습니다. 이 주석은 모델의 메시지 클래스에 연결되어 있으며 한 번만 선언해야 합니다. |
케이스 1: separator = 'u0001'
FIX 메시지에서 키 값 쌍 필드를 분리하는 데 사용되는 구분 기호는 ASCII '01' 문자 또는 유니코드 형식 '\u0001'입니다. java 런타임 오류를 방지하려면 이 문자를 두 번째로 이스케이프해야 합니다. 다음은 이에 대한 예입니다.Here is an example:
8=FIX.4.1 9=20 34=1 35=0 49=INVMGR 56=BRKR 1=BE.CHM.001 11=CHM0001-01 22=4 ...
및 주석 사용 방법
FIX - 메시지
@Message(keyValuePairSeparator = "=", pairSeparator = "\u0001", type="FIX", version="4.1") public class Order { }
*Look at test cases*
tab, …과 같은 ASCII 문자는 WIKI 페이지에 표시할 수 없습니다. 따라서 FIX 메시지가 (src\test\data\fix\fix\fix.txt)와 Order, Trailer, Header 클래스 (src\test\java\org\apache\camel\dataformat\data format\bindy\bindy\bindy\bindy\bindy\bindy\simple\Order)와 같은 방식을 정확하게 보려면 camel-bindy의 테스트 케이스를 살펴보십시오.