このページは、Vaults と 2012 年以降の元の REST API を使用する S3 Glacier サービスの既存のお客様のみを対象としています。
アーカイブストレージソリューションをお探しの場合は、Amazon S3、S3 Glacier Instant Retrieval、S3 Glacier Flexible Retrieval、S3 Glacier Deep Archive の S3 Glacier ストレージクラスを使用することをお勧めします。これらのストレージオプションの詳細については、「Amazon S3 ユーザーガイド」の「S3 Glacier ストレージクラス
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon S3 Glacier で AWS SDK for Java を使用してボールトメタデータを取得する
特定のボールトのボールトメタデータの取得
特定のボールトのメタデータおよび特定のAWSリージョン内のすべてのボールトのメタデータを取得することができます。以下に、Amazon SDK for Java の低レベル API を使用して特定のボールトのボールトメタデータを取得する手順を示します。
-
AmazonGlacierClient
クラスのインスタンス(クライアント)を作成します。ボールトが属する AWS リージョンを指定する必要があります。このクライアントを使用して実行するすべてのオペレーションは、そのAWS リージョンに適用されます。
-
DescribeVaultRequest
クラスのインスタンスを作成することにより、リクエスト情報を指定します。Amazon S3 Glacier (S3 Glacier) には、ボールト名とアカウント ID を指定する必要があります アカウント ID を指定しなかった場合には、リクエストに署名する際に使用した認証情報に関連付けられているアカウント ID が使用されます。詳細については、「Amazon S3 Glacier でのAWS SDK for Javaの使用」を参照してください。
-
リクエストオブジェクトをパラメータとして指定して、
describeVault
メソッドを実行します。S3 Glacier が返すボールトメタデータ情報は、
DescribeVaultResult
オブジェクトで使用できます。
以下の Java コードスニペットは、前述の手順を示しています。
DescribeVaultRequest request = new DescribeVaultRequest() .withVaultName("*** provide vault name***"); DescribeVaultResult result = client.describeVault(request); System.out.print( "\nCreationDate: " + result.getCreationDate() + "\nLastInventoryDate: " + result.getLastInventoryDate() + "\nNumberOfArchives: " + result.getNumberOfArchives() + "\nSizeInBytes: " + result.getSizeInBytes() + "\nVaultARN: " + result.getVaultARN() + "\nVaultName: " + result.getVaultName());
注記
基本となる REST API については、「ボールトの説明 (GET vault)」を参照してください。
リージョン内のすべてのボールトのボールトメタデータの取得
listVaults
メソッドを使用して、特定のAWSリージョン内のすべてのボールトのメタデータを取得することもできます。
以下の Java コードスニペットにより、us-west-2
リージョン内のボールトのリストを取得します。リクエストでは、レスポンスで返されるボールトの数を 5 に制限します。このコードスニペットでは、AWS リージョンのボールトのリスト全体を取得する一連の listVaults
呼び出しを行います。
AmazonGlacierClient client; client.setEndpoint("https://glacier.us-west-2.amazonaws.com/"); String marker = null; do { ListVaultsRequest request = new ListVaultsRequest() .withLimit("5") .withMarker(marker); ListVaultsResult listVaultsResult = client.listVaults(request); List<DescribeVaultOutput> vaultList = listVaultsResult.getVaultList(); marker = listVaultsResult.getMarker(); for (DescribeVaultOutput vault : vaultList) { System.out.println( "\nCreationDate: " + vault.getCreationDate() + "\nLastInventoryDate: " + vault.getLastInventoryDate() + "\nNumberOfArchives: " + vault.getNumberOfArchives() + "\nSizeInBytes: " + vault.getSizeInBytes() + "\nVaultARN: " + vault.getVaultARN() + "\nVaultName: " + vault.getVaultName()); } } while (marker != null);
このコードスニペットにおいて、リクエストの Limit
の値を指定しなかった場合、S3 Glacier は、S3 Glacier API に定められているように、最大 10 個のボールトを返します。リストに表示するボールトがさらに存在する場合、レスポンスの marker
フィールドにボールト Amazon リソースネーム (ARN) が含まれ、この中に新しいリクエストのリストの続きが含まれます。そうでない場合、marker
フィールドは null になります。
リスト内の各ボールトに対して返される情報は、特定のボールトに対して describeVault
メソッドを呼び出して取得する情報と同じであることに注意してください。
注記
listVaults
メソッドは基本となる REST API を呼び出します (「ボールトのリスト (GET vaults)」を参照)。
例: Amazon SDK for Java によるボールトメタデータの取得
コード例については、「例: AWS SDK for Java を使用したボールトの作成」を参照してください。この Java コード例では、ボールトを作成し、ボールトメタデータを取得します。