Home >> SmartFactory NonUI 
+- 1. 파생항목 
+- 2. 메시지생성 
+- 3. Send TC to Kafka 
+- 4. Skip TC

Parsed Message의 파생항목 생성을 위한 PoscoTransformLayout

PoscoTransformLayout

PoscoTransformLayout 은 파싱된 Glue Message의 파생항목 생성을 위한 MessageLayoutManager입니다. PoscoTransformLayout 에서 제공하는 메소드는 Java Doc을 참고합니다. GlueAPI

또한, Glue Message 파싱에 관련된 문서는 해당 링크를 참조합니다. Layout Manager

그림 : 파생항목 처리를 위한 Custom Activity 생성
Transformed Activity Diagram

해당 Activity Diagram은 파생항목 생성을 위한 Transformed Custom Activity를 Glue Message Parse 컴포넌트에 연결한 부분.

Transformed Activity 설정

  1. 기존의 Message Parse 컴포넌트에 Custom Activity (Transformed Activity) 를 추가하고, class 속성에 com.posco.reuse.transformed.activity.AddTransformAttribute를 추가합니다.
  2. Application Context에 등록한 attManager를 layout으로 설정합니다.

    ※ 참고 : Application Context 내용

    <bean id="attManager" class="com.posco.reuse.transformed.AttributeXmlManagerImpl">
        <property name="cacheManager" ref="cacheManager"/>
    </bean>
    

PoscoTransformLayout.xsd를 이용한 trs.xml 파일 생성

해당 xsd 파일을 이용하여 xml file을 생성하고, xml 파일 명명은 (tc id)-trs.xml 로 한다.

ex) tc id가 MSGFW001인 경우, MSGFW001-trs.xml

encache.xml에 항목 추가하기

기존 cache 속성 아래에 다음항목을 추가한다.

<cache name="_transform-definition-region" maxElementsInMemory="500" eternal="true"></cache>

(tc id)-trs.xml를 이용한 파생항목 작성예시

파생항목 xml 파일의 속성 예시는 다음과 같다.

<transformed data_type="파생항목 데이터 타입" target_att_nm="파생항목 키 값">
    <reference StartIndex="자를 메시지 첫 인덱스" EndIndex="자를 메시지의 마지막 인덱스" SourceObjAttr="기존 parsed 메시지 id" SourceObjAttrConstantV="상수 정의시 가져올 값" SourceObjTp="기존 parsed 메시지 타입" />
</transformed>
  • transformed 속성
    • data_type (파생항목 데이터 타입) : 파생항목의 4가지 데이터 타입 중 선택
      • STRING, NUMBER, ARRAY, DATE
    • target_att_nm (파생항목 키 값) : 생성한 파생항목을 접근할 수 있는 고유 키
  • reference 속성
    • StartIndex (자를 메시지 첫 인덱스) : 메시지를 잘라서 사용할 경우 시작 인덱스
    • EndIndex (자를 메시지의 마지막 인덱스) : 메시지를 잘라서 사용할 경우 마지막 인덱스
    • SourceObjAttr (기존 parsed 메시지 id) : parsed 메시지의 attribute id
    • SourceObjAttrConstantV (상수 정의시 가져올 값) : SourceObjTp 을 CONSTANT 로 선택했을 때 사용할 상수 값
    • SourceObjTp (기존 parsed 메시지 타입) : parsed 된 메시지의 타입을 선택
      • MESSAGE, CONSTANT

    ※ 각 transformed 에는 reference 하위 엘리멘트가 최소 1개 이상 와야한다. 여러 개의 reference 엘리먼트가 오는경우, 이를 붙이는 형식으로 파생항목이 생성이 된다.

파생항목 xml 파일의 속성별 테스트 결과

파생항목 테스트를 위한 Parsed Message 값

파생항목 생성을 위한 xml 파일의 속성을 테스트 하기 위해서, Message를 먼저 Message Parse를 이용해 파싱한다. Glue Message Parse 컴포넌트를 거친 parsed message는 다음과 같은 형식이다.

그림 : Message Parse를 통해 파싱된 메시지
Parsed Message

파싱된 메시지를 이용한 파생항목 생성 예시

tc-id가 MSGFW001인 MSGFW001-trs.xml 파일의 속성을 다음과 같이 설정

그림 : MSGFW001-trs.xml 파일 속성
MSGFW001-trs.xml Properties

파생항목을 생성한 결과는 다음과 같다.

그림 : 파생항목 생성 결과
Console창 결과 로그