第15章 Atomix メッセージングコンポーネント
Camel バージョン 2.20 以降で利用可能
camel atomix-messaging コンポーネントを使用すると、Atomix の Group Messaging を操作できます。
Maven ユーザーは、このコンポーネントの pom.xml に以下の依存関係を追加する必要があります。
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-atomix</artifactId>
        <version>${camel-version}</version>
    </dependency>
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-atomix</artifactId>
        <version>${camel-version}</version>
    </dependency>15.1. URI 形式
atomix-messaging:group
    atomix-messaging:groupAtomix Messaging コンポーネントは、以下に示す 5 個のオプションをサポートしています。
| 名前 | 説明 | デフォルト | タイプ | 
|---|---|---|---|
| configuration (common) | 共有コンポーネントの設定 | AtomixMessaging 設定 | |
| atomix (common) | 共有 AtomixClient インスタンス | AtomixClient | |
| nodes (common) | AtomixClient が接続する必要のあるノード | List | |
| configurationUri (common) | AtomixClient 設定へのパス | String | |
| resolveProperty Placeholders (advanced) | 起動時にコンポーネントがプロパティープレースホルダーを解決するかどうか。String タイプのプロパティーのみがプロパティープレースホルダーを使用できます。 | true | boolean | 
Atomix メッセージングエンドポイントは、URI 構文を使用して設定されます。
atomix-messaging:resourceName
atomix-messaging:resourceNameパスおよびクエリーパラメーターを使用します。
15.1.1. パスパラメーター (1 個のパラメーター):
| 名前 | 説明 | デフォルト | タイプ | 
|---|---|---|---|
| resourceName | 必須 分散リソース名 | String | 
15.1.2. クエリーパラメーター (19 パラメーター)
| 名前 | 説明 | デフォルト | タイプ | 
|---|---|---|---|
| atomix (common) | 使用する Atomix インスタンス | Atomix | |
| broadcastType (common) | ブロードキャストタイプ。 | ALL | BroadcastType | 
| channelName (common) | メッセージングチャネル名 | String | |
| configurationUri (common) | Atomix 設定 uri。 | String | |
| defaultAction (common) | これがデフォルト動作です。 | DIRECT | Action | 
| memberName (common) | Atomix グループのメンバー名 | String | |
| nodes (common) | クラスターを設定するノードのアドレス。 | String | |
| resultHeader (common) | 結果を届けるヘッダー。 | String | |
| transport (common) | Atomix トランスポートを設定します。 | io.atomix.catalyst.transport.netty.NettyTransport | トランスポート | 
| bridgeErrorHandler (consumer) | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、consumer は org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | boolean | 
| exceptionHandler (consumer) | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、consumer は例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | ExceptionHandler | |
| exchangePattern (consumer) | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。 | ExchangePattern | |
| defaultResourceConfig (advanced) | クラスター全体のデフォルトのリソース設定。 | Properties | |
| defaultResourceOptions (advanced) | ローカルのデフォルトリソースオプション。 | Properties | |
| ephemeral (advanced) | ローカルメンバーが PersistentMember としてグループに参加するかどうかを設定します。ephemeral に設定すると、ローカルメンバーは自動生成された ID を受け取るため、ローカルメンバーは無視されます。 | false | boolean | 
| readConsistency (advanced) | 読み取り一貫性レベル。 | ReadConsistency | |
| resourceConfigs (advanced) | クラスター全体のリソース設定。 | Map | |
| resourceOptions (advanced) | ローカルリソースの設定 | Map | |
| synchronous (advanced) | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるかどうかを設定します (サポートされている場合)。 | false | boolean |