0
0

[Cloud Storage API(V2)] Javaでバケットを生成・更新・削除する

Posted at

Cloud Storage API V2(Java)を使用して、
Cloud Storageのバケットを生成・更新・削除する方法
についてご紹介します。

APIを利用する環境の準備から始める場合や、コードを実行する際は、
⧉[Cloud Storage API(V2)] JavaでCloud Storageを使う
を参照ください。

No 目次
1 バケットを生成
1 スコープ
2 実行
3 レスポンスの内容
2 バケットを上書き
1 スコープ
2 実行
3 レスポンスの内容
3 バケットを更新
1 スコープ
2 実行
3 レスポンスの内容
4 空のバケットを削除
1 スコープ
2 実行
3 レスポンスの内容

1. バケットを生成

指定したプロジェクトにバケットを作成します。

1.1. スコープ

このAPIを実行するには、以下のいずれかのスコープを指定してください。

StorageScopes.CLOUD_PLATFORM
StorageScopes.DEVSTORAGE_FULL_CONTROL
StorageScopes.DEVSTORAGE_READ_WRITE

⧉[Cloud Storage API(V2)] JavaでCloud Storageを使う(2.2 Storageインスタンスを取得)
でスコープを指定してください。

1.2. 実行

public static void main(String[] args) throws Exception{
    Storage storage = getStorage();
    Storage.Buckets bucketsu = storage.buckets();
    
    Bucket content = new Bucket();
    content.setName("バケット名");
    Storage.Buckets.Insert insert = bucketsu.insert("プロジェクトID",content);
    
    Bucket res = insert.execute();
    System.out.println(res);
}

1.2.1. HTTPリクエスト

POST: https://storage.googleapis.com/storage/v1/b
が実行されます。

1.2.2. クエリパラメータ

Storage.Buckets.Insertのsetメソッドにより、クエリパラメータを追加できます。

メソッド 引数 説明
setEnableObjectRetention Boolean オブジェクト保持を永続的に有効にするか
setPredefinedAcl String バケットに定義するアクセス制御リスト(ACL)の定義
setPredefinedDefaultObjectAcl String バケットに定義するデフォルトのアクセス制御リスト(ACL)の定義
setProjection String 設定するプロパティのセット
"full"(全てのプロパティ)、"noAcl"(ACL以外の全てのプロパティ)

アクセス制御リスト(ACL)の定義

定義値 内容
authenticatedRead プロジェクトチームの所有者がOWNERアクセス権を取得し、アクセス権allAuthenticatedUsersを取得
private プロジェクトチームの所有者がOWNERアクセス権を取得
projectPrivate プロジェクトチームのメンバーは、それぞれの役割に応じてアクセス権を取得
publicRead プロジェクトチームの所有者がOWNERアクセス権を取得し、 アクセス権allUsersを取得
publicReadWrite プロジェクトチームの所有者がOWNERアクセス権を取得し、アクセス権allUsersを取得

1.2.3. リクエストボディ

Storage.Bucketsのsetメソッドにより、リクエストボディを追加できます。

メソッド 引数 説明
setName String 【生成の場合のみ】

【必須】バケットの名前
setAcl List<BucketAccessControl> 【上書きの場合は必須】

バケットのアクセス制御
Bucket.IamConfiguration.UniformBucketLevelAccess.setEnabled(false)の場合のみ】
setAutoclass Bucket.Autoclass バケットのAutoclass構成
setBilling Bucket.Billing バケットの課金構成
setCors List<Bucket.Cors> バケットのCross-OriginResourceSharing(CORS)構成
setCustomPlacementConfig Bucket.CustomPlacementConfig 【生成の場合のみ】

バケットのカスタムロケーション構成
setDefaultEventBasedHold Boolean eventBasedHoldを自動的に適用するか
setDefaultObjectAcl List<ObjectAccessControl> ACLが提供されていない場合に新しいオブジェクトに適用されるデフォルトのアクセス制御
Bucket.IamConfiguration.UniformBucketLevelAccess.setEnabled(false)の場合のみ】
setEncryption Bucket.Encryption バケットの暗号化構成
setIamConfiguration Bucket.IamConfiguration バケットのIAM構成
setLabels Map<String,String> ユーザーが指定したバケットラベル
キー:バケットID
setLifecycle Bucket.Lifecycle バケットのライフサイクル構成
setLocation String 【生成の場合のみ】

バケットの場所
setLogging Bucket.Logging バケットのログ構成
setRetentionPolicy Bucket.RetentionPolicy バケットの保持ポリシー
setRpo String バケットのリージョン間レプリケーションの目標復旧ポイント
"DEFAULT"(デフォルトのレプリケーション)、"ASYNC_TURBO"(ターボ レプリケーション)
setSoftDeletePolicy Bucket.SoftDeletePolicy バケットの論理的な削除ポリシー
setStorageClass String バケットのデフォルトのストレージクラス
setVersioning Bucket.Versioning バケットのバージョン管理構成
setWebsite Bucket.Website バケットのWebサイト構成

BucketAccessControl(Set)

メソッド 引数 説明
setId String アクセス制御エントリID
setBucket String バケットの名前
setKind String リソースの種類
固定文字列:"storage#bucketAccessControl"
setDomain String エンティティに関連付けられているドメイン
setEmail String エンティティに関連付けられているメールアドレス
setEntity String 権限を保持するエンティティ

次のいずれかの形式
user-{email}
group-{groupId}
group-{email}
domain-{domain}
project-{team-projectId}
allUsers
allAuthenticatedUsers
setEntityId String エンティティID
setEtag String アクセス制御エントリのHTTPエンティティタグ
setProjectTeam BucketAccessControl.ProjectTeam エンティティに関連付けられているプロジェクトチーム
setRole String エンティティのアクセス許可
"OWNER"、"READER"、"WRITER"
setSelfLink String このアクセス制御エントリへのリンク

BucketAccessControl.ProjectTeam(Set)

メソッド 引数 説明
setProjectNumber String プロジェクト番号
setTeam String チーム役割
"editors"、"owners"、"viewers"

Bucket.Autoclass(Set)

メソッド 引数 説明
setEnabled Boolean Autoclassが有効か
setTerminalStorageClass String オートクラスが有効なバケット内のオブジェクトがアクセスされなかった場合に遷移するストレージクラス

Bucket.Billing(Set)

メソッド 引数 説明
setRequesterPays Boolean リクエスターの支払いが有効か

Bucket.Cors(Set)

メソッド 引数 説明
setMaxAgeSeconds Integer プリフライト応答で使用されるAccess-Control-Max-Ageヘッダーで返される値(秒単位)
setMethod List<String> 応答ヘッダーメソッド
setOrigin List<String> CORS応答ヘッダーを受信できるオリジンのリスト
setResponseHeader List<String> HTTPヘッダーのリスト

Bucket.CustomPlacementConfig(Set)

メソッド 引数 説明
setDataLocations List<String> デュアルリージョン バケットを構成するリスト

ObjectAccessControl(Set)

メソッド 引数 説明
setKind String リソースの種類
固定文字列:"storage#objectAccessControl"
setDomain String エンティティに関連付けられているドメイン
setEmail String エンティティに関連付けられているメールアドレス
setEntity String 権限を保持するエンティティ

次のいずれかの形式
user-{email}
group-{groupId}
group-{email}
domain-{domain}
project-{team-projectId}
allUsers
allAuthenticatedUsers
setEntityId String エンティティID
setEtag String アクセス制御エントリのHTTPエンティティタグ
setProjectTeam ObjectAccessControl.ProjectTeam エンティティに関連付けられているプロジェクトチーム
setRole String エンティティのアクセス許可
"OWNER"、"READER"、"WRITER"

ObjectAccessControl.ProjectTeam(Set)

メソッド 引数 説明
setProjectNumber String プロジェクト番号
setTeam String チーム役割
"editors"、"owners"、"viewers"

Bucket.Encryption(Set)

メソッド 引数 説明
setDefaultKmsKeyName String オブジェクトの暗号化に使用されるCloud KMS Key

Bucket.IamConfiguration(Set)

メソッド 引数 説明
setPublicAccessPrevention String バケットのパブリック アクセス防止"inherited"ステータス
setUniformBucketLevelAccess Bucket.IamConfiguration.UniformBucketLevelAccess バケットの均一なバケットレベルのアクセス 構成

Bucket.IamConfiguration.UniformBucketLevelAccess(Set)

メソッド 引数 説明
setEnabled Boolean バケットが均一なバケットレベルのアクセスを使用するか

Bucket.Lifecycle(Set)

メソッド 引数 説明
setRule List<Bucket.Lifecycle.Rule> ライフサイクル管理ルール

Bucket.Lifecycle.Rule(Set)

メソッド 引数 説明
setAction List<Bucket.Lifecycle.Rule.Action> 実行するライフサイクルアクション
setCondition Bucket.Lifecycle.Rule.Condition アクションが実行される条件

Bucket.Lifecycle.Rule.Action(Set)

メソッド 引数 説明
setStorageClass String 新しいストレージクラス
setType String アクションのタイプ

Bucket.Lifecycle.Rule.Condition(Set)

メソッド 引数 説明
setAge Integer オブジェクトの経過時間
setCreatedBefore DateTime UTCで指定された日付の午前0時より前にオブジェクトが作成された時刻
setCustomTimeBefore DateTime オブジェクトのメタデータがこのライフサイクル条件で使用される日付よりも前の日付に設定された時刻
setDaysSinceCustomTime Integer オブジェクトに設定されたユーザー指定のタイムスタンプから経過した日数
setDaysSinceNoncurrentTime Integer オブジェクトの非現行タイムスタンプから経過した日数
setIsLive Boolean オブジェクトのライブバージョンと一致しているか
setMatchesPrefix List<String> オブジェクトの接頭辞
setMatchesSuffix List<String> オブジェクトの接尾辞
setMatchesStorageClass List<String> ストレージクラスを持つオブジェクト
setNoncurrentTimeBefore DateTime 非最新になったオブジェクトの時刻
setNumNewerVersions Integer 新しいバージョン

Bucket.Logging(Set)

メソッド 引数 説明
setLogBucket String 現在のバケットのログを配置する宛先バケット
setLogObjectPrefix String ログオブジェクト名のプレフィックス

Bucket.RetentionPolicy(Set)

メソッド 引数 説明
setRetentionPeriod Long バケット内のオブジェクトを保持し、削除、置換、または非最新にすることができない期間(秒単位)

Bucket.SoftDeletePolicy(Set)

メソッド 引数 説明
setEffectiveTime DateTime 論理的な削除ポリシーが有効になる日時
setRetentionDurationSeconds Long 論理的に削除されたオブジェクトが保持され、完全に削除できない期間(秒単位)

Bucket.Versioning(Set)

メソッド 引数 説明
setEnabled Boolean このバケットのバージョン管理が完全に有効か

Bucket.Website(Set)

メソッド 引数 説明
setMainPageSuffix String サフィックス
setNotFoundPage String オブジェクトが欠落している場合の名前付きオブジェクト

ストレージクラス

定義値 ストレージクラス 最小保存期間 回収料金 通常の月間可用性
STANDARD 標準ストレージ なし なし マルチリージョンおよびデュアルリージョンで > 99.99%
地域では 99.99%
NEARLINE ニアラインストレージ 30日 あり マルチリージョンおよびデュアルリージョンで 99.95%
地域では99.9%
COLDLINE コールドラインストレージ 90日 あり マルチリージョンおよびデュアルリージョンで 99.95%
地域では99.9%
ARCHIVE アーカイブストレージ 365日 あり マルチリージョンおよびデュアルリージョンで 99.95%
地域では99.9%

1.3. レスポンスの内容

Buckets

メソッド 戻り値 説明
getKind String リソースの種類
固定文字列:"storage#buckets"
getNextPageToken String 次のページトークン
getItems List<Bucket> バケットのリスト

Bucket

メソッド 戻り値 説明
getId String バケットID
getName String バケットの名前
getSelfLink String バケットURI
getKind String リソースの種類
固定文字列:"storage#bucket"
getAcl List<BucketAccessControl> バケットのアクセス制御
getAutoclass Bucket.Autoclass バケットのAutoclass構成
getBilling Bucket.Billing バケットの課金構成
getCors List<Bucket.Cors> バケットのCross-OriginResourceSharing(CORS)構成
getCustomPlacementConfig Bucket.CustomPlacementConfig バケットのカスタムロケーション構成
getDefaultEventBasedHold Boolean eventBasedHoldを自動的に適用するか
getDefaultObjectAcl List<ObjectAccessControl> ACLが提供されていない場合に新しいオブジェクトに適用されるデフォルトのアクセス制御
getEncryption Bucket.Encryption バケットの暗号化構成
getEtag String バケットのHTTPエンティティタグ
getIamConfiguration Bucket.IamConfiguration バケットのIAM構成
getLabels Map<String,String> ユーザーが指定したバケットラベル
キー:バケットID
getLifecycle Bucket.Lifecycle バケットのライフサイクル構成
getLocation String バケットの場所
getLocationType String バケットが存在する場所のタイプ
getLogging Bucket.Logging バケットのログ構成
getMetageneration Long メタ世代番号(metageneration)
getObjectRetention Bucket.ObjectRetention バケットのオブジェクト保持設定
getOwner Bucket.Owner バケットの所有者
getProjectNumber BigInteger バケットが属するプロジェクトのプロジェクト番号
getRetentionPolicy Bucket.RetentionPolicy バケットの保持ポリシー
getRpo String バケットのリージョン間レプリケーションの目標復旧ポイント
getSoftDeletePolicy Bucket.SoftDeletePolicy バケットの論理的な削除ポリシー
getStorageClass String バケットのデフォルトのストレージクラス
getTimeCreated DateTime バケットの作成時刻
getUpdated DateTime バケットの更新された時刻
getVersioning Bucket.Versioning バケットのバージョン管理構成
getWebsite Bucket.Website バケットのWebサイト構成

BucketAccessControl

メソッド 戻り値 説明
getId String アクセス制御エントリID
getBucket String バケットの名前
getKind String リソースの種類
固定文字列:"storage#bucketAccessControl"
getDomain String エンティティに関連付けられているドメイン
getEmail String エンティティに関連付けられているメールアドレス
getEntity String 権限を保持するエンティティ

次のいずれかの形式
user-{email}
group-{groupId}
group-{email}
domain-{domain}
project-{team-projectId}
allUsers
allAuthenticatedUsers
getEntityId String エンティティID
getEtag String アクセス制御エントリのHTTPエンティティタグ
getProjectTeam BucketAccessControl.ProjectTeam エンティティに関連付けられているプロジェクトチーム
getRole String エンティティのアクセス許可
"OWNER"、"READER"、"WRITER"
getSelfLink String このアクセス制御エントリへのリンク

BucketAccessControl.ProjectTeam

メソッド 戻り値 説明
getProjectNumber String プロジェクト番号
getTeam String チーム役割
"editors"、"owners"、"viewers"

Bucket.Autoclass

メソッド 戻り値 説明
getEnabled Boolean Autoclassが有効か
getTerminalStorageClass String オートクラスが有効なバケット内のオブジェクトがアクセスされなかった場合に遷移するストレージクラス
getTerminalStorageClassUpdateTime DateTime 最後に更新された時刻
getToggleTime DateTime 最後に有効または無効になった時刻

Bucket.Billing

メソッド 戻り値 説明
getRequesterPays Boolean リクエスターの支払いが有効か

Bucket.Cors

メソッド 戻り値 説明
getMaxAgeSeconds Integer プリフライト応答で使用されるAccess-Control-Max-Ageヘッダーで返される値(秒単位)
getMethod List<String> 応答ヘッダーメソッド
getOrigin List<String> CORS応答ヘッダーを受信できるオリジンのリスト
getResponseHeader List<String> HTTPヘッダーのリスト

Bucket.CustomPlacementConfig

メソッド 戻り値 説明
getDataLocations List<String> デュアルリージョン バケットを構成するリスト

ObjectAccessControl

メソッド 戻り値 説明
getKind String リソースの種類
固定文字列:"storage#objectAccessControl"
getDomain String エンティティに関連付けられているドメイン
getEmail String エンティティに関連付けられているメールアドレス
getEntity String 権限を保持するエンティティ

次のいずれかの形式
user-{email}
group-{groupId}
group-{email}
domain-{domain}
project-{team-projectId}
allUsers
allAuthenticatedUsers
getEntityId String エンティティID
getEtag String アクセス制御エントリのHTTPエンティティタグ
getProjectTeam ObjectAccessControl.ProjectTeam エンティティに関連付けられているプロジェクトチーム
getRole String エンティティのアクセス許可
"OWNER"、"READER"、"WRITER"

ObjectAccessControl.ProjectTeam

メソッド 戻り値 説明
getProjectNumber String プロジェクト番号
getTeam String チーム役割
"editors"、"owners"、"viewers"

Bucket.Encryption

メソッド 戻り値 説明
getDefaultKmsKeyName String オブジェクトの暗号化に使用されるCloud KMS Key

Bucket.IamConfiguration

メソッド 戻り値 説明
getPublicAccessPrevention String バケットのパブリック アクセス防止"inherited"ステータス
getUniformBucketLevelAccess Bucket.IamConfiguration.UniformBucketLevelAccess バケットの均一なバケットレベルのアクセス 構成

Bucket.IamConfiguration.UniformBucketLevelAccess

メソッド 戻り値 説明
getEnabled Boolean バケットが均一なバケットレベルのアクセスを使用するか
getLockedTime DateTime 変更するための期限

Bucket.Lifecycle

メソッド 戻り値 説明
getRule List<Bucket.Lifecycle.Rule> ライフサイクル管理ルール

Bucket.Lifecycle.Rule

メソッド 戻り値 説明
getAction List<Bucket.Lifecycle.Rule.Action> 実行するライフサイクルアクション
getCondition Bucket.Lifecycle.Rule.Condition アクションが実行される条件

Bucket.Lifecycle.Rule.Action

メソッド 戻り値 説明
getStorageClass String 新しいストレージクラス
getType String アクションのタイプ

Bucket.Lifecycle.Rule.Condition

メソッド 戻り値 説明
getAge Integer オブジェクトの経過時間
getCreatedBefore DateTime UTCで指定された日付の午前0時より前にオブジェクトが作成された時刻
getCustomTimeBefore DateTime オブジェクトのメタデータがこのライフサイクル条件で使用される日付よりも前の日付に設定された時刻
getDaysSinceCustomTime Integer オブジェクトに設定されたユーザー指定のタイムスタンプから経過した日数
getDaysSinceNoncurrentTime Integer オブジェクトの非現行タイムスタンプから経過した日数
getIsLive Boolean オブジェクトのライブバージョンと一致しているか
getMatchesPrefix List<String> オブジェクトの接頭辞
getMatchesSuffix List<String> オブジェクトの接尾辞
getMatchesStorageClass List<String> ストレージクラスを持つオブジェクト
getNoncurrentTimeBefore DateTime 非最新になったオブジェクトの時刻
getNumNewerVersions Integer 新しいバージョン

Bucket.Logging

メソッド 戻り値 説明
getLogBucket String 現在のバケットのログを配置する宛先バケット
getLogObjectPrefix String ログオブジェクト名のプレフィックス

Bucket.ObjectRetention

メソッド 戻り値 説明
getMode String バケット内のオブジェクト保持構成

Bucket.Owner

メソッド 戻り値 説明
getEntity String 形式のエンティティ
getEntityId String エンティティID

Bucket.RetentionPolicy

メソッド 戻り値 説明
getEffectiveTime DateTime retentionPolicyが有効になった時刻
getIsLocked Boolean 保持ポリシーがロックされているか
getRetentionPeriod Long バケット内のオブジェクトを保持し、削除、置換、または非最新にすることができない期間(秒単位)

Bucket.SoftDeletePolicy

メソッド 戻り値 説明
getEffectiveTime DateTime 論理的な削除ポリシーが有効になる日時
getRetentionDurationSeconds Long 論理的に削除されたオブジェクトが保持され、完全に削除できない期間(秒単位)

Bucket.Versioning

メソッド 戻り値 説明
getEnabled Boolean このバケットのバージョン管理が完全に有効か

Bucket.Website

メソッド 戻り値 説明
getMainPageSuffix String サフィックス
getNotFoundPage String オブジェクトが欠落している場合の名前付きオブジェクト

2. バケットを上書き

指定したバケットを上書きします。

3. バケットを更新と違うところは、
指定した存在するバケットを新しいバケットに置き換えます。

2.1. スコープ

このAPIを実行するには、以下のいずれかのスコープを指定してください。

StorageScopes.CLOUD_PLATFORM
StorageScopes.DEVSTORAGE_FULL_CONTROL
StorageScopes.DEVSTORAGE_READ_WRITE

⧉[Cloud Storage API(V2)] JavaでCloud Storageを使う(2.2 Storageインスタンスを取得)
でスコープを指定してください。

2.2. 実行

バケットのアクセス制御(ACL)の指定は必須です。

public static void main(String[] args) throws Exception{
    Storage storage = getStorage();
    Storage.Buckets buckets = storage.buckets();
    
    Bucket content = new Bucket();
    content.setAcl(new ArrayList<>());
    Storage.Buckets.Update update = buckets.update("バケットID", content);
    
    Bucket res = update.execute();
    System.out.println(res);
}

2.2.1. HTTPリクエスト

PUT: https://storage.googleapis.com/storage/v1/b/{バケットID}
が実行されます。

2.2.2. クエリパラメータ

Storage.Buckets.Updateのsetメソッドにより、クエリパラメータを追加できます。

メソッド 引数 説明
setIfMetagenerationMatch Long メタ世代番号(metageneration)と一致する場合のみ設定を反映
setIfMetagenerationNotMatch Long メタ世代番号(metageneration)と一致しない場合のみ設定を反映
setPredefinedAcl String バケットに定義するアクセス制御リスト(ACL)の定義
setPredefinedDefaultObjectAcl String バケットに定義するデフォルトのアクセス制御リスト(ACL)の定義
setProjection String 設定するプロパティのセット
"full"(全てのプロパティ)、"noAcl"(ACL以外の全てのプロパティ)

2.2.3. リクエストボディ

Bucketのsetメソッドにより、リクエストボディを追加できます。

1.2.3. リクエストボディと同じです。

2.3. レスポンスの内容

Bucket

1.3. レスポンスの内容(Bucket)と同じです。

3. バケットを更新

指定したバケットのメタデータを更新します。

2. バケットを上書きと違うところは、
指定したバケットのメタデータのみを更新します。

3.1. スコープ

このAPIを実行するには、以下のいずれかのスコープを指定してください。

StorageScopes.CLOUD_PLATFORM
StorageScopes.DEVSTORAGE_FULL_CONTROL
StorageScopes.DEVSTORAGE_READ_WRITE

⧉[Cloud Storage API(V2)] JavaでCloud Storageを使う(2.2 Storageインスタンスを取得)
でスコープを指定してください。

3.2. 実行

public static void main(String[] args) throws Exception{
    Storage storage = getStorage();
    Storage.Buckets buckets = storage.buckets();
    
    Bucket content = new Bucket();
    //更新内容を設定します。
    
    Storage.Buckets.Patch patch = buckets.patch("バケットID", content);
    Bucket res = patch.execute();
    System.out.println(res);
}

3.2.1. HTTPリクエスト

PATCH: https://storage.googleapis.com/storage/v1/b/{バケットID}
が実行されます。

3.2.2. クエリパラメータ

Storage.Buckets.Patchのsetメソッドにより、クエリパラメータを追加できます。

メソッド 引数 説明
setIfMetagenerationMatch Long メタ世代番号(metageneration)と一致する場合のみ設定を反映
setIfMetagenerationNotMatch Long メタ世代番号(metageneration)と一致しない場合のみ設定を反映
setPredefinedAcl String バケットに定義するアクセス制御リスト(ACL)の定義
setPredefinedDefaultObjectAcl String バケットに定義するデフォルトのアクセス制御リスト(ACL)の定義
setProjection String 設定するプロパティのセット
"full"(全てのプロパティ)、"noAcl"(ACL以外の全てのプロパティ)

3.2.3. リクエストボディ

Bucketのsetメソッドにより、リクエストボディを追加できます。

1.2.3. リクエストボディと同じです。

3.3. レスポンスの内容

Bucket

1.3. レスポンスの内容(Bucket)と同じです。

4. 空のバケットを削除

指定した空のバケットを削除します。

このAPIで削除できるのはバケットが空の場合のみです。
バケットが空ではない場合は例外が発生します。

4.1. スコープ

このAPIを実行するには、以下のいずれかのスコープを指定してください。

StorageScopes.CLOUD_PLATFORM
StorageScopes.DEVSTORAGE_FULL_CONTROL
StorageScopes.DEVSTORAGE_READ_WRITE

⧉[Cloud Storage API(V2)] JavaでCloud Storageを使う(2.2 Storageインスタンスを取得)
でスコープを指定してください。

4.2. 実行

public static void main(String[] args) throws Exception{
    Storage storage = getStorage();
    Storage.Buckets buckets = storage.buckets();
    
    Storage.Buckets.Delete delete = buckets.delete("バケットID");
    
    delete.execute();
}

4.2.1. HTTPリクエスト

DELETE: https://storage.googleapis.com/storage/v1/b/{バケットID}
が実行されます。

4.2.2. クエリパラメータ

Storage.Buckets.Deleteのsetメソッドにより、クエリパラメータを追加できます。

メソッド 引数 説明
setIfMetagenerationMatch Long メタ世代番号(metageneration)と一致する場合のみ削除する
setIfMetagenerationNotMatch Long メタ世代番号(metageneration)と一致しない場合のみ削除する

4.2.3. リクエストボディ

リクエストボディはありません。

4.3. レスポンスの内容

レスポンスはありません。
削除に失敗した場合は例外が発生します。



おしまい。。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0