Apache Cassandra Connector 4.1 の例 - Mule 4

次の例は、Apache Cassandra Connector の設定方法を示しています。

新規 Apache Cassandra テーブルの作成

この例には次のフローが含まれます。

  • 最初のフロー: 新規テーブルのデータを伝送するために使用される、HTML 入力フォームのテンプレートを設定する。

  • 2 番目のフロー: 新規テーブルのキースペースを作成する。

  • 3 番目のフロー: 新規テーブルを作成する。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内の変数をその値に置き換える

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、「プロパティプレースホルダーの設定」を参照してください。

HTML 入力フォームのテンプレートの設定

次のフローは、新規テーブルを作成する HTML 入力を提供するために使用する、HTML テンプレートを設定します。

Parse Template フロー
Figure 1. HTML テンプレートの設定フロー

HTTP リスナーを設定する

ポート 8081 で ​/​ パスへのコールが行われたときに Mule フローを開始するように HTTP リスナーを設定します。

  1. Anypoint Studio で新しい Mule プロジェクトを作成します。

  2. Studio で ​[HTTP]​ をクリックし、​[Listener]​ 操作をキャンバスにドラッグします。

  3. [Listener]​ プロパティウィンドウで、​[Connector configuration (コネクタ設定)]​ 項目の横にあるプラス記号 (​+​) をクリックしてグローバル要素を追加します。

  4. デフォルトを受け入れます。

  5. [Listener]​ プロパティウィンドウで、​[Path (パス)]​ 項目値を ​/​ に設定します。

Parse Template コンポーネントの追加

Parse Template​ コンポーネントを追加して、メインリソースフォルダーにある HTML フォーム (​form.html​) のテンプレートを作成します。例ではこのフォームを使用して、テーブルを作成するための情報を伝送します。

  1. [Mule Palette (Mule パレット)] ビューで「​parse​」を検索し、​[Core]​ > ​[Parse Template]​ を ​[Listener]​ の右側にドラッグします。

  2. [Location (場所)]​ 項目に「​form.html​」と入力します。

キースペースを作成する

次のフローは、新規テーブルのキースペースを作成します。

Create keyspace フロー
Figure 2. キースペースの作成フロー

HTTP リスナーを設定する

ポート ​8081​ で ​/test/createKeyspace​ パスへのコールが行われたときに Mule フローを開始するように HTTP リスナーを設定します。

  1. Anypoint Studio で新しい Mule プロジェクトを作成します。

  2. Studio で ​[HTTP]​ をクリックし、​[Listener]​ 操作をキャンバスにドラッグします。

  3. [Listener] プロパティウィンドウで、​[Connector configuration (コネクタ設定)]​ 項目の横にあるプラス記号 (​+​) をクリックしてグローバル要素を追加します。

  4. デフォルトを受け入れます。

  5. [Listener]​ 設定ウィンドウで、​[Path (パス)]​ 項目値を ​/test/createKeyspace​ に設定します。

Transform Message コンポーネントの追加

Transform Message​ コンポーネントを追加して、​HTTP Listener​ から受信したペイロードに基づいて Java 変数を設定します。

  1. [Mule Palette (Mule パレット)] ビューから、​[Transform Message]​ コンポーネントを ​[Listener]​ の右側にドラッグします。

  2. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/java
    ---
    {
     "keyspaceName": payload.keyspaceName,
     "replicationFactor": payload.replicationFactor,
     "replicationStrategyClass": payload.replicationStrategyClass
    }
    as Object {
     class: "org.mule.modules.cassandradb.api.CreateKeyspaceInput"
    }
    dataweave

Create Keyspace 操作を追加する

新規テーブルが置かれるキースペースを作成するため、​Create keyspace​ 操作を追加します。

  1. [Mule Palette (Mule パレット)]​ ビューから、​[CassandDB]​ を選択して ​[Create keyspace]​ 操作を ​[Transform Message]​ コンポーネントの右側にドラッグします。

  2. [Create keyspace]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にあるプラス記号 (​+​) をクリックしてグローバル要素を追加します。

  3. グローバル要素の項目を次のように設定します。

    項目 説明

    Host (ホスト)

    ${cassandra.Host}

    Port (ポート)

    ${cassandra.Port}

    Keyspace (キースペース)

    ${cassandra.keySpace}

    Username (ユーザー名)

    ${cassandra.userName}

    Password (パスワード)

    ${cassandra.password}

  4. [Test Connection (接続をテスト)]​ をクリックして、Mule が Apache Cassandra インスタンスに接続できることを確認します。

    正常に接続できた場合は、​[OK]​ をクリックして設定を保存します。それ以外の場合、無効なパラメーターを確認および修正して、再度テストします。

  5. プロジェクトを保存します。

  6. ポート ​8081​ で ​test/createKeyspace​ パスに REST 要求を送信してアプリケーションをテストします。

新規テーブルを作成する

次のフローは、対象 Apache Cassandra データベースに新規テーブルを作成します。

Create Table フロー
Figure 3. 新規テーブルの作成フロー

HTTP リスナーを設定する

ポート ​8081​ で ​/test/createTable​ パスへのコールが行われたときに Mule フローを開始するように HTTP リスナーを設定します。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. Studio で ​[HTTP]​ をクリックし、​[Listener]​ 操作をキャンバスにドラッグします。

  3. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にあるプラス記号 (​+​) をクリックしてグローバル要素を追加します。

  4. デフォルトを受け入れます。

  5. [Listener]​ 設定で、​[Path (パス)]​ 項目値を ​/test/createTable​ に設定します。

Transform Message コンポーネントの追加

Transform Message​ コンポーネントを追加して、​HTTP Listener​ から受信したペイロードに基づいて Java 変数を設定します。

  1. [Mule Palette (Mule パレット)] ビューから、​[Transform Message]​ コンポーネントを ​[Listener]​ の右側にドラッグします。

  2. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/java
    ---
    {
      "columns": payload.columns,
      "tableName": payload.tableName,
      "keyspaceName": payload.keyspaceName
    } as Object {
      class : "org.mule.modules.cassandradb.api.CreateTableInput"
    }
    dataweave

Create Table 操作を追加する

前のフローで作成したキースペースに新規テーブルを作成するため、​Create Table​ 操作を追加します。

  1. [Mule Palette (Mule パレット)]​ ビューから、​[CassandDB]​ を選択して ​[Create Table]​ 操作を ​[Transform Message]​ コンポーネントの右側にドラッグします。

  2. [Create Table]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にあるプラス記号 (​+​) をクリックします。

  3. Create keyspace​ 操作用に設定したグローバル要素を選択します。

  4. [OK]​ をクリックします。

  5. [Test Connection (接続をテスト)]​ をクリックして、Mule が Cassandra インスタンスに接続できることを確認します。

    クライアントテストに成功した場合は、​[OK]​ をクリックして設定を保存します。それ以外の場合、無効なパラメーターを確認および修正して、再度テストします。

  6. 保存して Mule アプリケーションを実行します。

  7. ポート ​8081​ で ​/test/createTable​ パスに ​POST​ コマンドを送信してアプリケーションをテストします。​application/json​ MIME タイプを使用して、データ型には大文字を使用し、コマンド本文にテーブルの説明を入力します。

    {
      "tableName": "users",
      "keyspaceName": "Excelsior",
      "columns":
      [
        {
          "name": "id",
          "type": "INT",
          "primaryKey": "true"
        },
        {
          "name": "username",
          "type": "TEXT",
          "primaryKey": "true"
        },
        {
          "name": "name",
          "type": "TEXT",
          "primaryKey": "false"
        },
        {
          "name": "email",
          "type": "TEXT",
          "primaryKey": "false"
        }
      ]
    }
    text

Apache Cassandra キースペースとテーブルの作成例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

Apache Cassandra データベース内のデータの操作

この例は、Apache Cassandra データベース内のデータを操作するための次の方法を示しています。

キースペースからのテーブル名の取得

この Mule フローは、指定されたキースペースからすべてのテーブル名を返します。

Get Table Names from Keyspace 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • Get Table Names from Keyspace​ 操作

  • [Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/getTablesFromKeyspace​ に設定します。

Get Table Names from Keyspace 操作を追加する

Get Table Names from Keyspace​ 操作は、指定されたキースペースからすべてのテーブル名を返します。

  1. Get Table Names from Keyspace​ 操作を、キャンバスの ​[HTTP Listener]​ の横にドラッグします。

  2. [Get Table Names from Keyspace]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

  3. [Get Table Names from Keyspace]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Keyspace name (キースペース名)

    #[payload.keyspaceName]

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​Get Table Names from Keyspace​ 操作の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

挿入

この Mule フローは、キースペースのテーブルにエンティティを挿入します。

Insert Entity 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • [Transform Message]​ コンポーネント

  • Insert Entity​ 操作

  • 2 つ目の ​[Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/insert​ に設定します。

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを Java に変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/java
    ---
    {
      "id": payload.id,
      "name": payload.name,
      "event": payload.event
    }
    xml

Insert Entity 操作を追加する

Insert Entity​ 操作は、キースペースのテーブルにエンティティを挿入します。

  1. Insert Entity​ 操作をキャンバスの ​[Transform Message]​ の横にドラッグします。

  2. [Insert Entity]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

  3. [Insert Entity]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Table (テーブル)

    example_table

    Keyspace name (キースペース名)

    example_keyspace

    Entity to insert (挿入するエンティティ)

    payload

2 つ目の [Transform Message] コンポーネントを追加する

2 つ目の ​[Transform Message]​ コンポーネントは、キースペースのデータを Java から XML に変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Insert Entity]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

選択

この Mule フローは ​Select​ クエリを実行します。

Select 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • Select​ 操作

  • [Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/insert​ に設定します。

Select 操作を追加する

Select​ 操作は、キースペースで ​Select​ クエリを実行します。

  1. Select​ 操作をキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  2. [Select]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​Cassandra​DB_C​onfig​ を選択します。

  3. [Select]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Query

    SELECT id, name, event FROM example_keyspace.example_table

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Select]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

更新

この Mule フローは、キースペースのテーブルのエンティティを更新します。

Update Entity 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • [Transform Message]​ コンポーネント

  • Update Entity​ 操作

  • 2 つ目の ​[Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/update​ に設定します。

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを Java に変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/java
    ---
    {
      "where":{
        id: payload.where
      },
      "columns":payload.columns
    }
    xml

Update Entity 操作を追加する

Update Entity​ 操作は、キースペースのテーブルのエンティティを更新します。

  1. Update Entity​ 操作をキャンバスの ​[Transform Message]​ の横にドラッグします。

  2. [Update Entity]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

  3. [Update Entity]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Table (テーブル)

    example_table

    Keyspace name (キースペース名)

    example_keyspace

    Entity to insert (挿入するエンティティ)

    payload

2 つ目の [Transform Message] コンポーネントを追加する

2 つ目の ​[Transform Message]​ コンポーネントは、キースペースのデータを Java から XML に変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Update Entity]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

削除

この Mule フローは、キースペースのテーブルからエンティティを削除します。

Delete Rows 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • [Transform Message]​ コンポーネント

  • Delete Rows​ 操作

  • 2 つ目の ​[Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/deleteRows​ に設定します。

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/java
    ---
    {
      "where": {
        id: payload.ids
      }
    }
    xml

Delete Rows 操作を追加する

Delete Rows​ 操作は、レコードを削除します。

  1. Delete Rows​ 操作をキャンバスの ​[Transform Message]​ の横にドラッグします。

  2. [Delete Rows]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

  3. [Delete Rows]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Table (テーブル)

    example_table

    Keyspace name (キースペース名)

    example_keyspace

    Entity to insert (挿入するエンティティ)

    payload

2 つ目の [Transform Message] コンポーネントを追加する

2 つ目の ​[Transform Message]​ コンポーネントは、キースペースのデータを Java から XML に変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Delete Rows]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

列値の削除

この Mule フローは、キースペースのテーブルから列の値を削除します。

Delete Columns Value 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • [Transform Message]​ コンポーネント

  • Delete Columns Value​ 操作を追加する

  • 2 つ目の ​[Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/deleteColumns​ に設定します。

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを Java に変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/java
    ---
    {
      "columns": payload.columns,
      "where": {
        id:payload.where
      }
    }
    xml

Delete Columns Value 操作を追加する

Delete Columns Value​ 操作は、​Where 句​で指定されたオブジェクトから値を削除します。

  1. Delete Columns Value​ 操作をキャンバスの ​[Transform Message]​ の横にドラッグします。

  2. [Delete Columns Value]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

  3. [Delete Columns Value]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Table (テーブル)

    example_table

    Keyspace name (キースペース名)

    example_keyspace

    Entities (エンティティ)

    Edit inline

    #[payload.entities]

    Where clause (Where 句)

    payload

2 つ目の [Transform Message] コンポーネントを追加する

2 つ目の ​[Transform Message]​ コンポーネントは、キースペースのデータを Java から XML に変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Delete Columns Value]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

列名の変更

この Mule フローは、指定されたキースペースのテーブルの列名を変更します。

Rename Column 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • Rename Column​ 操作

  • [Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/renameColumn​ に設定します。

Rename Column 操作を追加する

Rename Column​ 操作は、キースペースのテーブルの列名を変更します。

  1. Rename Column​ 操作をキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  2. [Rename Column]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

  3. [Rename Column]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Table (テーブル)

    #[payload.tableName]

    Keyspace name (キースペース名)

    #[payload.keyspaceName]

    Old column name (古い列名)

    payload.oldName

    New column name (新しい列名)

    #[payload.newName]

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Rename Column]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

新しい列の追加

この Mule フローは、キースペースのテーブルに新しい列を追加します。

Add New Table Column 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • Set Variable​ コンポーネント

  • 2 つ目の ​Set Variable​ コンポーネント

  • [Transform Message]​ コンポーネント

  • Add New Table Column​ 操作

  • 2 つ目の ​[Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/addNewColumn​ に設定します。

Set Variable コンポーネントを追加する

最初の ​Set Variable​ コンポーネントは、テーブル名の値を格納します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​set variable​」を検索します。

  2. [Set Variable]​ コンポーネントをキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  3. [Set Variable]​ プロパティウィンドウで、次の項目を設定します。

    項目

    名前

    tableName

    #[payload.tableName]

2 つ目の Set Variable コンポーネントを追加する

2 つ目の ​Set Variable​ コンポーネントは、キースペース名の値を格納します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​set variable​」を検索します。

  2. [Set Variable]​ コンポーネントをキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  3. [Set Variable]​ プロパティウィンドウで、次の項目を設定します。

    項目

    名前

    keyspaceName

    #[payload.keyspaceName]

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Set Variable]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/java
    ---
    {
      "column": payload.column,
      "type": payload.'type'
    } as Object {
      class : "org.mule.modules.cassandradb.api.AlterColumnInput"
    }
    xml

Add New Table Column 操作を追加する

Add New Table Column​ 操作は、新しい列を追加します。

  1. Add New Table​ 操作をキャンバスの ​[Transform Message]​ の横にドラッグします。

  2. [Add New Table Column]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

  3. [Add New Table Column]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Table (テーブル)

    #[vars['tableName']]

    Keyspace name (キースペース名)

    #[vars['keyspaceName']]

    Alter column input (変更列の入力)

    payload

2 つ目の [Transform Message] コンポーネントを追加する

2 つ目の ​[Transform Message]​ コンポーネントは、キースペースのデータを Java から XML に変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Add New Table Column]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

列の削除

この Mule フローは、キースペースのテーブルから列を削除します。

Drop Column 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • Drop Column​ 操作

  • [Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/dropColumn​ に設定します。

Drop Column 操作を追加する

Drop Column​ 操作は、列を削除します。

  1. Drop Column​ 操作をキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  2. [Drop Column]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

  3. [Drop Column]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Table (テーブル)

    #[payload.tableName]

    Keyspace name (キースペース名)

    #[payload.keyspaceName]

    Column name (列名)

    payload.columnName

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Drop Column]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

Cassandra クエリ言語 (CQL) クエリの実行

この Mule フローは、指定された未加工の入力クエリを実行します。

Execute CQL Query 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • [Transform Message]​ コンポーネント

  • Execute CQL Query​ 操作

  • 2 つ目の ​[Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/executeCqlQuery​ に設定します。

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを Java に変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/java
    ---
    {
      "cqlQuery": payload.cqlQuery,
      "parameters": payload.parameters
    } as Object {
      class : "org.mule.modules.cassandradb.api.CQLQueryInput"
    }
    xml

Execute CQL Query 操作を追加する

Execute CQL Query​ 操作は、未加工の入力クエリを実行します。

  1. Execute CQL Query​ 操作をキャンバスの ​[Transform Message]​ の横にドラッグします。

  2. [Execute CQL Query]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

2 つ目の [Transform Message] コンポーネントを追加する

2 つ目の ​[Transform Message]​ コンポーネントは、キースペースのデータを Java から XML に変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Execute CQL Query]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

テーブルの削除

この Mule フローは、指定されたキースペースからテーブルを削除します。

Drop Table 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • Drop Table​ 操作

  • [Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/dropTable​ に設定します。

Drop Table 操作を追加する

Drop Table​ 操作は、指定されたキースペースからテーブルを削除します。​Drop Table​ 操作でキースペースを指定しないと、接続パラメーターのキースペースでテーブルが作成されます。

  1. Drop Table​ 操作をキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  2. [Drop Table]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

  3. [Drop Table]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Table name (テーブル名)

    payload.tableName

    Keyspace name (キースペース名)

    #[payload.keyspaceName]

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Drop Table]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

キースペースの削除

この Mule フローは、指定されたキースペースとその値を削除します。

Drop Keyspace 操作の Studio フロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • Drop Keyspace​ 操作

  • [Transform Message]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. Listener​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/dropKeyspace​ に設定します。

Drop Keyspace 操作を追加する

Drop Keyspace​ 操作は、キースペースとその値を削除します。

  1. Drop Keyspace​ 操作をキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  2. [Drop Keyspace]​ の設定で、 ​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、 ​[Cassandra​DB_C​onfig]​ を選択します。

  3. [Drop Keyspace]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Keyspace name (キースペース名)

    payload.keyspaceName

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、キースペースのデータを変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Drop Keyspace]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload
    xml

Apache Cassandra データベースのデータの操作例

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。