Capabilities API for Java の概要

Capabilities API を使用すると、特定の API 機能の停止や予定されているダウンタイムをアプリケーションで検出できます。この API を使用すると、特定の機能を利用できないことを検出してバイパスできるので、アプリケーションのダウンタイムを短縮できます。

たとえば、Images API を使用して画像のサイズを変更する場合、Capabilities API を使用すれば、Images API を利用できるかどうか確認し、利用できないときにはサイズ変更をスキップできます。

import com.google.appengine.api.capabilities.*;

CapabilitiesService service =
    CapabilitiesServiceFactory.getCapabilitiesService();
CapabilityStatus status = service.getStatus(Capability.IMAGES).getStatus();

if (status == CapabilityStatus.DISABLED) {
    // Images API is not available.
}

データストアの読み取りと書き込みが可能かどうかを調べるには、別のクエリを実行できます。次の例は、データストアが書き込み可能であるかを確認し、ダウンタイム中であればユーザーにメッセージを表示する方法を示しています。

CapabilityStatus status =
    service.getStatus(Capability.DATASTORE_WRITE).getStatus();

if (status == CapabilityStatus.DISABLED) {
    // Datastore is in read-only mode.
}

Java での Capabilities API の使用

各機能(Capability)は、Capability クラスで静的定数として表されます(例: Capability.DATASTORE_WRITE)。各機能には状態があり、CapabilitiesService.getStatus(Capability) で取得できます。さらに、それぞれの状態にステータスがあります。ステータスは、ある機能が使用可能かどうかを表す列挙型定数で、ENABLED または DISABLED です。この API で現在有効なサービスのリストについては、下記をご覧ください。

サポートされている機能

この API は現在、次の機能をサポートしています。

機能 getStatus の引数
blobstore の利用可否 Capability.BLOBSTORE
データストアの読み取り Capability.DATASTORE
データストアの書き込み Capability.DATASTORE_WRITE
画像サービスの利用可否 Capability.IMAGES
メールサービスの利用可否 Capability.MAIL
Memcache サービスの利用可否 Capability.MEMCACHE
タスクキュー サービスの利用可否 Capability.TASKQUEUE
URL フェッチ サービスの利用可否 Capability.URL_FETCH
このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Java の App Engine スタンダード環境