Archive、Cold Archive、およびDeep Cold Archiveオブジェクトは、読み取る前に復元する必要があります。 このトピックでは、アーカイブ、コールドアーカイブ、およびDeep Cold Archiveオブジェクトを復元する方法について説明します。
使用上の注意
このトピックのサンプルコードを実行する前に、カスタムドメイン名やSecurity Token Service (STS) などの方法を使用してOSSClientインスタンスを作成する必要があります。 詳細については、「初期化」をご参照ください。
例
次のサンプルコードは、examplebucketという名前のバケットでexampleobject.txtという名前のオブジェクトを復元する方法の例を示しています。 exampleobject.txtオブジェクトのストレージクラスは、Archive、Cold Archive、またはDeep Cold Archiveです。
次のサンプルコードを使用してオブジェクトを正常に復元すると、HTTPステータスコード202が返されます。 この場合、オブジェクトの復元に時間がかかる。 詳細については、「RestoreObject」をご参照ください。
// オブジェクトを復元します。
RestoreObjectRequest restore = new RestoreObjectRequest();
// バケットの名前を指定します。 例: examplebucket.
restore.setBucketName("examplebucket");
// オブジェクトのフルパスを指定します。 バケット名をフルパスに含めないでください。 例: exampleobject.txt。
restore.setObjectKey("exampleobject.txt");
OSSAsyncTask task = oss.asyncRestoreObject(restore, new OSSCompletedCallback<RestoreObjectRequest,
RestoreObjectResult>() {
@オーバーライド
public void onSuccess(RestoreObjectRequestリクエスト, RestoreObjectResult結果) {
Log.i("info", "code::" + result.getStatusCode());
}
@オーバーライド
public void onFailure(RestoreObjectRequest request, ClientException clientException,
ServiceException serviceException) {
Log.e("errorMessage", "error: " + serviceException.getRawMessage());
}
});
task.waitUntilFinished();
参考資料
Archive、Cold Archive、およびDeep Cold Archiveオブジェクトの復元に使用される完全なサンプルコードについては、GitHubをご参照ください。
アーカイブ、コールドアーカイブ、およびディープコールドアーカイブオブジェクトを復元するために呼び出すことができるAPI操作の詳細については、「RestoreObject」をご参照ください。
OSSClientインスタンスを初期化する方法の詳細については、「初期化」をご参照ください。