2.2. カウンターの作成と管理

REST API を使用してカウンターの作成、削除、修正ができます。

2.2.1. カウンターの作成

ペイロードに設定が含まれる POST リクエストでカウンターを作成します。

POST /rest/v2/counters/{counterName}

弱いカウンターの例

{
    "weak-counter":{
        "initial-value":5,
        "storage":"PERSISTENT",
        "concurrency-level":1
    }
}

強力なカウンターの例

{
    "strong-counter":{
        "initial-value":3,
        "storage":"PERSISTENT",
        "upper-bound":5
    }
}

2.2.2. カウンターの削除

DELETE リクエストで特定のカウンターを削除します。

DELETE /rest/v2/counters/{counterName}

2.2.3. カウンター設定の取得

GET リクエストで特定のカウンターの設定を取得します。

GET /rest/v2/counters/{counterName}/config

Data Grid は、JSON 形式でカウンターの設定を応答します。

2.2.4. カウンター値の取得

GET リクエストでカウンターの値を取得します。

GET /rest/v2/counters/{counterName}

表2.18 ヘッダー

ヘッダー必須またはオプションパラメーター

Accept

オプション

コンテンツを返すために必要なフォーマットです。対応フォーマットは、application/jsontext/plainです。ヘッダーが指定されていない場合、JSON が想定されます。

2.2.5. カウンターのリセット

POST リクエストと ?action=reset パラメーターを使用せずに、カウンターの初期値を復元することができます。

POST /rest/v2/counters/{counterName}?action=reset

操作が正常に完了すると、サービスは 204 (No Content) を返します。

2.2.6. カウンターのインクリメント

POST リクエストに ?action=increment パラメーターを指定して、カウンターの値を増加させます。

POST /rest/v2/counters/{counterName}?action=increment
注記

WEAK カウンターは操作後に応答せず、204 (No Content) を返します。

STRONG カウンターは、各操作後に 200 (OK) と現在値を返します。

2.2.7. カウンターへのデルタの追加

?action=add および delta パラメーターを含む POST リクエストで、カウンターに任意の値を追加します。

POST /rest/v2/counters/{counterName}?action=add&delta={delta}
注記

WEAK カウンターは操作後に応答せず、204 (No Content) を返します。

STRONG カウンターは、各操作後に 200 (OK) と現在値を返します。

2.2.8. カウンター値のデクリメント

カウンターの値を減少させるには、POST リクエストと ?action=decrement パラメーターを使用します。

POST /rest/v2/counters/{counterName}?action=decrement
注記

WEAK カウンターは操作後に応答せず、204 (No Content) を返します。

STRONG カウンターは、各操作後に 200 (OK) と現在値を返します。

2.2.9. ストロングカウンターでの compareAndSet オペレーションの実行

GET リクエストと compareAndSet パラメーターを使用して、強力なカウンターの値をアトミックに設定します。

POST /rest/v2/counters/{counterName}?action=compareAndSet&expect={expect}&update={update}

Data Grid は、現在の値が {expect} の場合、{update} にアトミックに値を設定します。操作が成功した場合、Data Grid は true.

2.2.10. 強力なカウンターでの compareAndSwap 操作の実行

GET リクエストと compareAndSwap パラメーターで強力なカウンターの値をアトミックに設定します。

POST /rest/v2/counters/{counterName}?action=compareAndSwap&expect={expect}&update={update}

Data Grid は、現在の値が {expect} の場合、{update} にアトミックに値を設定します。操作が成功すると、 Data Grid はペイロードの前の値を返します。

2.2.11. カウンターの一覧表示

GET リクエストで Data Grid クラスターのカウンターのリストを取得します。

GET /rest/v2/counters/