Cette page s'adresse uniquement aux clients existants du service S3 Glacier utilisant Vaults et l'API REST d'origine datant de 2012.
Si vous recherchez des solutions de stockage d'archives, nous vous conseillons d'utiliser les classes de stockage S3 Glacier dans Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval et S3 Glacier Deep Archive. Pour en savoir plus sur ces options de stockage, consultez les sections Classes de stockage S3 Glacier
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
L'exemple de code Java suivant utilise l'API de haut niveau du AWS SDK for Java pour télécharger l'archive que vous avez chargée à l'étape précédente. Dans l'exemple de code, notez les éléments suivants :
-
L' exemple crée une instance de la classe
AmazonGlacierClient
. -
Le code utilise la région USA Ouest (Oregon) (
us-west-2
) qui correspond à l'emplacement du coffre que vous avez créé précédemment à l'Étape 2 : Créer un coffre dans S3 Glacier. -
L'exemple utilise l'opération d'API
download
de la classeArchiveTransferManager
issue de l'API de haut niveau d' AWS SDK for Java. L'exemple crée une rubrique Amazon Simple Notification Service (Amazon SNS) et une file d'attente Amazon Simple Queue Service (Amazon SQS) qui est abonnée à cette rubrique. Si vous avez créé un utilisateur administrateur AWS Identity and Access Management (IAM) conformément aux instructionsÉtape 1 : Avant de commencer avec S3 Glacier, celui-ci dispose des autorisations IAM nécessaires pour créer et utiliser la rubrique Amazon SNS et la file d'attente Amazon SQS.
Pour step-by-step obtenir des instructions sur la façon d'exécuter cet exemple, consultezExécution d'exemples Java pour Amazon S3 Glacier en utilisant Eclipse. Vous devez mettre à jour le code tel qu'il est présenté avec l'ID d'archive du fichier que vous avez chargé à l'Étape 3 : Charger une archive sur un coffre dans S3 Glacier.
Exemple – Téléchargement d'une archive à l'aide d' AWS SDK for Java
import java.io.File;
import java.io.IOException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.glacier.AmazonGlacierClient;
import com.amazonaws.services.glacier.transfer.ArchiveTransferManager;
import com.amazonaws.services.sns.AmazonSNSClient;
import com.amazonaws.services.sqs.AmazonSQSClient;
public class AmazonGlacierDownloadArchive_GettingStarted {
public static String vaultName = "examplevault";
public static String archiveId = "*** provide archive ID ***";
public static String downloadFilePath = "*** provide location to download archive ***";
public static AmazonGlacierClient glacierClient;
public static AmazonSQSClient sqsClient;
public static AmazonSNSClient snsClient;
public static void main(String[] args) throws IOException {
ProfileCredentialsProvider credentials = new ProfileCredentialsProvider();
glacierClient = new AmazonGlacierClient(credentials);
sqsClient = new AmazonSQSClient(credentials);
snsClient = new AmazonSNSClient(credentials);
glacierClient.setEndpoint("glacier.us-west-2.amazonaws.com");
sqsClient.setEndpoint("sqs.us-west-2.amazonaws.com");
snsClient.setEndpoint("sns.us-west-2.amazonaws.com");
try {
ArchiveTransferManager atm = new ArchiveTransferManager(glacierClient, sqsClient, snsClient);
atm.download(vaultName, archiveId, new File(downloadFilePath));
} catch (Exception e)
{
System.err.println(e);
}
}
}