すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:OSS SDK for Androidを使用してオブジェクトを復元する

最終更新日:Feb 21, 2024

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インスタンスを初期化する方法の詳細については、「初期化」をご参照ください。