tSQSQueueList コンポーネント、tIterateToFlow コンポーネント、tLogRow コンポーネント、tJava コンポーネントを設定して、AWSリージョン内のすべてのAmazon SQSキューのURLをリスト表示し、Talend Studio のコンソールにリージョン内のキューの総数を表示します。
手順
tSQSQueueList コンポーネントをダブルクリックして、[Basic settings] (基本設定) ビューを開きます。
Amazon SQSへのアクセスに必要な接続の詳細を指定します。この例では、[Use an existing connection] (既存の接続を使用) チェックボックスをオンにして、表示された[Component List] (コンポーネントリスト) ドロップダウンリストから、定義済みの接続詳細を再利用する接続コンポーネントを選択します。
tIterateToFlow コンポーネントをダブルクリックして、[Basic settings] (基本設定) ビューを開きます。
[Edit schema] (スキーマを編集) の横にある ボタンをクリックし、スキーマダイアログボックスを開きます。
ボタンをクリックして、リスト表示するキューのURLを保持する文字列型のカラムCurrentQueueURL を1つ追加します。完了したら、[OK] をクリックしてダイアログボックスを閉じます。
[Mapping] (マッピング) テーブルで、CurrentQueueURL カラムの値を設定するために使われます。この例では、値は((String)globalMap.get("tSQSQueueList_1_CURRENT_QUEUE_NAME")) に設定されています。これは、tSQSQueueList コンポーネントのグローバル変数CURRENT_QUEUE_NAME の値です。
値を入力するには、[Ctrl] + [Space] を押してグローバル変数リストにアクセスし、リストからtSQSQueueList_1_CURRENT_QUEUE_NAME を選択します。
tLogRow コンポーネントをダブルクリックして[Basic settings] (基本設定) ビューを開き、[Mode] (モード) エリアで[Table (print values in cells of a table)] (テーブル(テーブルのセルに値を表示)) を選択します。これで結果の表示が改善します。
tJava コンポーネントをダブルクリックして、[Basic settings] (基本設定) ビューを開きます。
[Code] (コード) フィールドに次のコードを入力して、リージョン内のキューの総数を表示します。
System.out.println("The number of queues: " + ((Integer)globalMap.get("tSQSQueueList_1_NB_QUEUE")));
コードをクリップボードにコピーします