Recuperar metadados do cofre no Amazon S3 Glacier usando o AWS SDK for Java - Amazon S3 Glacier

Se você é novato no Amazon Simple Storage Service (Amazon S3), recomendamos que comece aprendendo mais sobre as classes de armazenamento S3 Glacier no Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval e S3 Glacier Deep Archive. Para obter mais informações, consulte Classes de armazenamento S3 Glacier e Classes de armazenamento para arquivamento de objetos no Guia do usuário do Amazon S3.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Recuperar metadados do cofre no Amazon S3 Glacier usando o AWS SDK for Java

Recuperar metadados de um cofre

Você pode recuperar metadados de um cofre específico ou de todos os cofres em uma região AWS específica. Estas são as etapas para recuperar metadados de um cofre específico usando a API de nível inferior do Amazon SDK para Java.

  1. Crie uma instância da classe AmazonGlacierClient (o cliente).

    Você precisa especificar uma região AWS onde o cofre reside. Todas as operações realizadas por você usando esse cliente se aplicam a essa região AWS.

  2. Forneça informações sobre a solicitação criando uma instância da classe DescribeVaultRequest.

    O Amazon S3 Glacier (S3 Glacier) exige que você forneça um nome de cofre e o ID da conta. Se você não fornecer um ID da conta, o ID da conta associado às credenciais fornecidas por você para assinar a solicitação será pressuposto. Para obter mais informações, consulte Como usar o Amazon S3 Glacier com a AWS SDK for Java.

  3. Execute o método describeVault fornecendo o objeto de solicitação como um parâmetro.

    As informações de metadados de cofre retornadas pelo S3 Glacier estão disponíveis no objeto DescribeVaultResult.

O trecho de código Java a seguir ilustra as etapas anteriores.

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());

nota

Para obter informações sobre a API REST subjacente, consulte Describe Vault (GET vault).

Recuperar metadados de todos os cofres em uma região

Você também pode usar o método listVaults para recuperar metadados de todos os cofres em uma região AWS específica.

O trecho de código do Java a seguir recupera uma lista de cofres na região us-west-2. A solicitação limita o número de cofres retornados na resposta a 5. Em seguida, o trecho de código faz uma série de chamadas listVaults para recuperar toda a lista de cofres da região.

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);

No segmento de código anterior, se você não especificar o valor Limit na solicitação, o S3 Glacier retornará até 10 cofres, conforme definido pela API do S3 Glacier. Se houver mais cofres a serem listados, o campo marker de resposta conterá o nome de recurso da Amazon (ARN) do cofre no qual deve continuar a lista com uma nova solicitação; do contrário, o campo marker será nulo.

As informações retornadas para cada cofre na lista são as mesmas obtidas por você chamando o método describeVault para um cofre específico.

nota

O método listVaults chama a API REST subjacente (consulte List Vaults (GET vaults)).

Exemplo: recuperar metadados de cofre usando o Amazon SDK para Java

Para obter um exemplo de código funcional, consulte Exemplos: como criar um cofre usando a AWS SDK for Java. O exemplo de código do Java cria um cofre e recupera os metadados do cofre.