ストリームデータ処理基盤 uCosminexus Stream Data Platform - Application Framework アプリケーション開発ガイド

[目次][索引][前へ][次へ]

7.2.1 ストリームデータの送信(RMI連携カスタムアダプター)

ここでは,RMI連携カスタムアダプターでストリームデータを送信する処理の基本的な流れについて,実装例を基に説明します。

 

実装例

public class RMI_SendSample {
  public static void main(String[] args) {
    try {
      // 1. SDPサーバに接続
      SDPConnector con = SDPConnectorFactory.connect();
 
      // 2. 送信対象の入力ストリームに接続
      StreamInput in = con.openStreamInput("GROUP","STREAM1");
 
      // 3. タプルを送信
      Object[] data=new Object[]{new Integer(1)};
      StreamTuple tuple=new StreamTuple(data);
      try {
        in.put(tuple);
 
        // 4. データ送信完了を通知
        in.putEnd();
      } catch (SDPClientQueryGroupStateException e) {
        System.out.println("クエリグループ停止");
      }
 
      // 5. 入力ストリームとの接続を切断
      in.close();
 
      // 6. SDPサーバとの接続を切断
      con.close();
    } catch (SDPClientException e) {
      System.err.println(e.getMessage());
    }
  }
}
 

実装内容の説明

それぞれの処理の意味について説明します。番号は実装例中のコメントの番号に対応しています。

  1. SDPサーバに接続して,SDPConnector型オブジェクト(con)を取得します。
    SDPConnector con = SDPConnectorFactory.connect();
  2. SDPConnector型オブジェクト(con)を使用して,グループ名が"GROUP",ストリーム名が"STREAM1"である入力ストリームに接続し,StreamInput型オブジェクト(in)を取得します。
    StreamInput in = con.openStreamInput("GROUP","STREAM1");
  3. StreamInput型オブジェクト(in)を使用して,タプル(ストリームデータ)を送信します。
    in.put(tuple);
  4. StreamInput型オブジェクト(in)を使用して,データ送信完了を通知します。
    in.putEnd();
  5. StreamInput型オブジェクト(in)を使用して,入力ストリームとの接続を切断します。
    in.close();
  6. SDPConnector型オブジェクト(con)を使用して,SDPサーバとの接続を切断します。
    con.close();