cSplitterを使ってメッセージを分割し、サブメッセージからの返信を集約 - 7.2

Splitter (メディエーション)

Version
7.2
Language
日本語 (日本)
Product
Talend Data Fabric
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > ルーティングコンポーネント(メディエーション) > Splitterコンポーネント(メディエーション)
データガバナンス > サードパーティーシステム > ルーティングコンポーネント(メディエーション) > Splitterコンポーネント(メディエーション)
データクオリティとプレパレーション > サードパーティーシステム > ルーティングコンポーネント(メディエーション) > Splitterコンポーネント(メディエーション)

このシナリオは、Talend Open Studio for ESB、Talend ESB、Talend Data Services Platform、Talend MDM Platform、Talend Real Time Big Data Platform、Talend Data Fabricのみに適用されます。

Talendがサポートしているテクノロジーの詳細は、Talend Mediationコンポーネントを参照してください。

このシナリオでは、cSplitterコンポーネントを使っしてメッセージを分割し、サブメッセージからの返信を集約します。

事前定義されたJavaBeanであるAppendAggregatorは、サブメッセージからの応答を集約するための戦略として呼び出されます。JavaBeansの作成と使用については、 Talend Studioユーザーガイドを参照してください。

package beans;
import org.apache.camel.Exchange;
import org.apache.camel.processor.aggregate.AggregationStrategy;

public class AppendAggregator implements AggregationStrategy {

	public Exchange aggregate(Exchange oldEx, Exchange newEx) {
		if(oldEx==null){
			return newEx;
		}
		String oldBody = oldEx.getIn().getBody(String.class);
		String newBody = newEx.getIn().getBody(String.class);
		newEx.getIn().setBody(oldBody + "\n" + newBody);
		return newEx;
	}
}