Object Store Connector リファレンス - Mule 4

Object Store Connector v1.2.0

サポートカテゴリ: Select

オブジェクトストアインスタンスのアクセスと作成を行う機能を提供するコネクタ。

設定


設定

デフォルト設定

パラメーター

名前 説明 デフォルト値 必須

Name (名前)

String (文字列)

この設定の名前。コネクタはこの名前の設定を参照します。

x

Connection (接続)

この設定に指定する接続型。

x

接続種別

Connection (接続)

Mule Runtime のデフォルトの ObjectStoreManager を返す ConnectionProvider。

パラメーター
名前 説明 デフォルト値 必須

Reconnection (再接続)

アプリケーションがデプロイされると、すべてのコネクタで接続テストが実行されます。true に設定されている場合、関連する再接続戦略をすべて実行した後にテストに合格しないと、デプロイメントが失敗します。

操作

Clear

<os:clear>

ストア内の全コンテンツを削除します。

パラメーター

名前 説明 デフォルト値 必須

Object Store (オブジェクトストア)

使用するオブジェクトストアへの参照。定義されていない場合は、Runtime のデフォルトパーティションが使用されます。

スロー

  • OS:STORE_NOT_AVAILABLE

Contains

<os:contains>

特定のキーに関連付けられている値があるかどうか確認します。キーに対する値がない場合、false が返されます。

この操作はキーレベルで同期されます。この操作の実行中、他の操作は同じオブジェクトストア上の同じキーにはアクセスできません。Runtime がクラスターモードで実行中の場合、この同期はノード間でも保証されます。

パラメーター

名前 説明 デフォルト値 必須

Key (キー)

String (文字列)

チェックするオブジェクトのキー。

x

Object Store (オブジェクトストア)

使用するオブジェクトストアへの参照。定義されていない場合は、Runtime のデフォルトパーティションが使用されます。

Target Variable (対象変数)

String (文字列)

操作の出力を保存する変数の名前。

Target Value (対象値)

String (文字列)

操作の出力に対して評価される式。この式の結果が対象変数に保存されます。

#[payload]

出力

Boolean (ブール)

スロー

  • OS:INVALID_KEY

  • OS:STORE_NOT_AVAILABLE

Remove

<os:remove>

特定のキーに関連付けられている値を削除します。キーに対する値がない場合、OS:KEY_NOT_FOUND​ エラーがスローされます。

この操作はキーレベルで同期されます。この操作の実行中、他の操作は同じオブジェクトストア上の同じキーにアクセスできません。

Runtime がクラスターモードで実行中の場合、この同期はノード間でも保証されます。

パラメーター

名前 説明 デフォルト値 必須

Key (キー)

String (文字列)

削除するオブジェクトのキー。

x

Object Store (オブジェクトストア)

使用するオブジェクトストアへの参照。定義されていない場合は、Runtime のデフォルトパーティションが使用されます。

スロー

  • OS:INVALID_KEY

  • OS:STORE_NOT_AVAILABLE

  • OS:KEY_NOT_FOUND

Retrieve

<os:retrieve>

特定のキーについて保存されている値を取得します。キーに対する値がない場合、動作は defaultValue パラメーターに応じて異なります。

パラメーターが指定されなかったか、または null 値に解決された場合は OS:KEY_NOT_FOUND​ エラーがスローされます。それ以外の場合、defaultValue が返されますが保存されません。

さらに、この操作はキーレベルで同期されます。この操作の実行中、他の操作は同じオブジェクトストア上の同じキーにはアクセスできません。Runtime がクラスターモードで実行中の場合、この同期はノード間でも保証されます。

パラメーター

名前 説明 デフォルト値 必須

Key (キー)

String (文字列)

取得する値のキー。

x

デフォルト値

Any (いずれか)

ストアにキーが存在しない場合に返される値。

Object Store (オブジェクトストア)

使用するオブジェクトストアへの参照。定義されていない場合は、Runtime のデフォルトパーティションが使用されます。

Target Variable (対象変数)

String (文字列)

操作の出力を保存する変数の名前。

Target Value (対象値)

String (文字列)

操作の出力に対して評価される式。この式の結果が対象変数に保存されます。

#[payload]

出力

Any (いずれか)

スロー

  • OS:INVALID_KEY

  • OS:KEY_NOT_FOUND

  • OS:STORE_NOT_AVAILABLE

Retrieve All

<os:retrieve-all>

ストア内の全キー/値ペアを取得します。

パラメーター

名前 説明 デフォルト値 必須

Object Store (オブジェクトストア)

使用するオブジェクトストアへの参照。定義されていない場合は、Runtime のデフォルトパーティションが使用されます。

Target Variable (対象変数)

String (文字列)

操作の出力を保存する変数の名前。

Target Value (対象値)

String (文字列)

操作の出力に対して評価される式。この式の結果が対象変数に保存されます。

#[payload]

出力

Object (オブジェクト)

スロー

  • OS:STORE_NOT_AVAILABLE

Retrieve All Keys

<os:retrieve-all-keys>

現在オブジェクトストアに値が保持されているすべてのキーを含むリストを返します。

パラメーター

名前 説明 デフォルト値 必須

Object Store (オブジェクトストア)

使用するオブジェクトストアへの参照。定義されていない場合は、Runtime のデフォルトパーティションが使用されます。

Target Variable (対象変数)

String (文字列)

操作の出力を保存する変数の名前。

Target Value (対象値)

String (文字列)

操作の出力に対して評価される式。この式の結果が対象変数に保存されます。

#[payload]

出力

Array of String (文字列の配列)

スロー

  • OS:STORE_NOT_AVAILABLE

Store

<os:store>

特定のキーを使用して特定の値を保存します。この操作は、failIfPresent の値に応じて、新しい値を保存するか、既存の値を更新する場合に使用できます。パラメーターが ​false​ (デフォルト値) に設定されている場合、そのキーに関連付けられている既存の値があれば上書きされます。パラメーターが ​true​ に設定されている場合、代わりに ​OS:KEY_ALREADY_EXISTS​ エラーがスローされます。

もう 1 つの重要な考慮事項は null 値に関するものです。null 値の保存は許可されていません。ただし、一般的なユースケースでは、値を (ほとんどは式またはトランスフォーメーションを評価して) 取得し、値が null ではないことを検査し、値が存在すれば保存して他には何も行いません。​failOnNullValue​ パラメーターでこのユースケースが簡略化されます。​false​ に設定すると、コネクタは null 値をスキップするので、​<choice/>​ ルーターを使用して状況を確認する必要がなくなります。デフォルト値の ​true​ を使用すると、コネクタは ​NULL_VALUE​ エラーをスローします。

さらに、この操作はキーレベルで同期されます。この操作の実行中、他の操作は同じオブジェクトストア上の同じキーにはアクセスできません。Runtime がクラスターモードで実行中の場合、この同期はノード間でも保証されます。

パラメーター

名前 説明 デフォルト値 必須

Key (キー)

String (文字列)

保存する値のキー。

x

Value (値)

Any (いずれか)

保存する値。​failOnNullValue​ が true に設定されている場合、null にはできません。

#[payload]

Fail If Present (存在する場合は失敗)

Boolean (ブール)

キーがすでにストアにある場合、失敗するか、または既存の値を更新するか。

false

Fail On Null Value (null 値の場合は失敗)

Boolean (ブール)

値が null の場合、失敗するか、操作をスキップするか。

true

Object Store (オブジェクトストア)

使用するオブジェクトストアへの参照。定義されていない場合は、Runtime のデフォルトパーティションが使用されます。

スロー

  • OS:INVALID_KEY

  • OS:KEY_ALREADY_EXISTS

  • OS:NULL_VALUE

  • OS:STORE_NOT_AVAILABLE

Reconnection (再接続)

項目 説明 デフォルト値 必須

Fails Deployment (デプロイに失敗)

Boolean (ブール)

アプリケーションがデプロイされると、すべてのコネクタで接続テストが実行されます。true に設定されている場合、関連する再接続戦略をすべて実行した後にテストに合格しないと、デプロイメントが失敗します。

Reconnection Strategy (再接続戦略)

使用する再接続戦略。

Reconnect (再接続)

項目 説明 デフォルト値 必須

Frequency (頻度)

Number (数値)

再接続する頻度 (ミリ秒)。

Count (数)

Number (数値)

再接続の試行回数。

blocking (ブロック)

Boolean (ブール)

false の場合、再接続戦略が個別の非ブロックスレッドで実行されます。

true

Reconnect Forever (繰り返し再接続)

項目 説明 デフォルト値 必須

Frequency (頻度)

Number (数値)

再接続する頻度 (ミリ秒)。

blocking (ブロック)

Boolean (ブール)

false の場合、再接続戦略が個別の非ブロックスレッドで実行されます。

true

Object Store (オブジェクトストア)

これらの設定は ​Object Store v2​ には適用されません。
項目 説明 デフォルト値 必須

Persistent (永続的)

Boolean (ブール)

このストアが永続的か、一時的か。

true

Max entries (最大エントリ数)

Number (数値)

許容される最大エントリ数。有効期限スレッドが実行されると、超過分のエントリは削除されます。指定しないと、記述されたオブジェクトストアのサイズ境界はなくなります。

Entry ttl (エントリ TTL)

Number (数値)

エントリのタイムアウト。指定しないと、記述されたオブジェクトストアの時間境界はなくなります。

Entry ttl unit (エントリ TTL 単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS (ナノ秒)

  • MICROSECONDS (マイクロ秒)

  • MILLISECONDS (ミリ秒)

  • SECONDS (秒)

  • MINUTES (分)

  • HOURS (時間)

  • DAYS (日)

エントリの存続期間 (​#entryTtl​)。

SECONDS (秒)

Expiration interval (有効期限間隔)

Number (数値)

有効期限スレッドを実行する頻度。デフォルト値は 1 分です。

expirationInterval​ 項目を設定した場合は ​maxEntries​ または ​entryTtl​ 項目も設定する必要があります。どちらも設定しないと、​Expiration Interval​ は効果がなく、有効期限スレッドは実行されません。 expirationInterval​ を 0 または負の値に設定すると、オブジェクトストアの有効期限は無期限となります。

1

Expiration interval unit (有効期限間隔単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS (ナノ秒)

  • MICROSECONDS (マイクロ秒)

  • MILLISECONDS (ミリ秒)

  • SECONDS (秒)

  • MINUTES (分)

  • HOURS (時間)

  • DAYS (日)

有効期限間隔 (​#expirationInterval​)。

MINUTES (分)

設定リファレンス

このオブジェクトストアを宣言するために使用する ​os:config​ 要素への参照。

設定しないと、Mule Runtime のデフォルト ObjectStoreManager が使用されます。このパラメーターは、デフォルト以外のオブジェクトストア実装を使用する場合にのみ設定する必要があります。たとえば、Redis や JDBC に基づいたストアを使用する場合です。

Object Store (Object Store v2) (オブジェクトストア (Object Store v2))

これらの設定は ​Object Store v2​ にのみ適用されます。
項目 説明 デフォルト値 必須

Persistent (永続的)

Boolean (ブール)

このストアが永続的か、一時的か。

true

Max entries (最大エントリ数)

Object Store v2 では設定できません​。

最大エントリ数は無制限です。

Entry ttl (エントリ TTL)

Number (数値)

エントリのタイムアウト。

expirationInterval​ が ​0​ 以下の場合は無視されます。

  • 最小値: 1 秒

  • 最大値: 30 日

項目に以下の値が含まれる場合:

  • 値なし

    • Mule バージョン 4.2.1 以降: ローリング TTL

    • 4.2.1 より前の Mule バージョン: デフォルトでは 30 日の静的 TTL

  • 0​ 以下

    TTL は静的であり、最大値 (2592000 秒/30 日) に設定されます。

  • 正数

    TTL は静的であり、指定された値 (1 ~ 2592000 秒) に設定されます。

  • 30 日より大きい

    TTL は静的であり、最大値 (2592000 秒/30 日) に設定されます。

ローリング TTL と静的 TTL の動作についての詳細は、​「存続期間 (TTL)」​を参照してください。

2592000 秒 (30 日)

Entry ttl unit (エントリ TTL 単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS (ナノ秒)

  • MICROSECONDS (マイクロ秒)

  • MILLISECONDS (ミリ秒)

  • SECONDS (秒)

  • MINUTES (分)

  • HOURS (時間)

  • DAYS (日)

エントリの存続期間 (​entryTtl​) の単位。

SECONDS (秒)

Expiration interval (有効期限間隔)

正数

有効期限スレッドを実行する頻度。

expirationInterval​ を ​entryTtl​ の値未満の正の値に設定します。

expirationInterval​ を 0 または負の値に設定すると、​entryTtl​ は無視されます。

expirationInterval​ 項目を設定した場合は ​entryTtl​ 項目を設定する必要があります。設定しないと、無視されます。

1 分

Expiration interval unit (有効期限間隔単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS (ナノ秒)

  • MICROSECONDS (マイクロ秒)

  • MILLISECONDS (ミリ秒)

  • SECONDS (秒)

  • MINUTES (分)

  • HOURS (時間)

  • DAYS (日)

有効期限間隔 (​expirationInterval​)。

MINUTES (分)

設定リファレンス

このオブジェクトストアを宣言するために使用する ​os:config​ 要素への参照。

設定しないと、Mule Runtime のデフォルト ObjectStoreManager が使用されます。このパラメーターは、デフォルト以外のオブジェクトストア実装を使用する場合にのみ設定する必要があります。たとえば、Redis や JDBC に基づいたストアを使用する場合です。

Object Store Connector

項目 説明 デフォルト値 必須

Config Name (設定名)

String (文字列)

Private Object Store (非公開オブジェクトストア)

これらの設定は ​Object Store v2​ には適用されません。
項目 説明 デフォルト値 必須

Alias (別名)

String (文字列)

管理ユーザーインターフェースでこのストアを参照するためのわかりやすい名前。このストアを簡単に識別したい場合は、この別名を指定してください。指定しないと、Mule は自動的に ID を生成します。

Persistent (永続的)

Boolean (ブール)

このストアが永続的か、一時的か。

true

Max entries (最大エントリ数)

Number (数値)

許容される最大エントリ数。有効期限スレッドが実行されると、超過分のエントリは削除されます。指定しないと、記述されたオブジェクトストアのサイズ境界はなくなります。

Entry ttl (エントリ TTL)

Number (数値)

エントリのタイムアウト。指定しないと、記述されたオブジェクトストアの時間境界はなくなります。

Entry ttl unit (エントリ TTL 単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS (ナノ秒)

  • MICROSECONDS (マイクロ秒)

  • MILLISECONDS (ミリ秒)

  • SECONDS (秒)

  • MINUTES (分)

  • HOURS (時間)

  • DAYS (日)

エントリの存続期間 (​#entryTtl​)。

SECONDS (秒)

Expiration interval (有効期限間隔)

Number (数値)

有効期限スレッドを実行する頻度。デフォルト値は 1 分です。

expirationInterval​ 項目を設定した場合は ​maxEntries​ または ​entryTtl​ 項目も設定する必要があります。どちらも設定しないと、​expirationInterval​ は効果がなく、有効期限スレッドは実行されません。​expirationInterval​ を 0 または負の値に設定すると、オブジェクトストアの有効期限は無期限となります。

1

Expiration interval unit (有効期限間隔単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS (ナノ秒)

  • MICROSECONDS (マイクロ秒)

  • MILLISECONDS (ミリ秒)

  • SECONDS (秒)

  • MINUTES (分)

  • HOURS (時間)

  • DAYS (日)

有効期限間隔 (​#expirationInterval​)。

MINUTES (分)

設定リファレンス

このオブジェクトストアを宣言するために使用する ​os:config​ 要素への参照。

設定しないと、Mule Runtime のデフォルト ObjectStoreManager が使用されます。このパラメーターは、デフォルト以外のオブジェクトストア実装を使用する場合にのみ設定する必要があります。たとえば、Redis や JDBC に基づいたストアを使用する場合です。