LoginSignup
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 レスポンスの内容

1. 管理フォルダリストを取得

指定したバケットの管理フォルダ(マネージドフォルダ)リストを取得します。

1.1. スコープ

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

StorageScopes.CLOUD_PLATFORM
StorageScopes.CLOUD_PLATFORM_READ_ONLY
StorageScopes.DEVSTORAGE_FULL_CONTROL
StorageScopes.DEVSTORAGE_READ_ONLY
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.ManagedFolders folder = storage.managedFolders();
    
    Storage.ManagedFolders.List list = folder.list("バケットID");
    
    ManagedFolders res = list.execute();
    System.out.println(res);
}

1.2.1. HTTPリクエスト

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

1.2.2. クエリパラメータ

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

メソッド 引数 説明
setPprefix String 管理フォルダ名がプレフィックス(接頭語)で始まるもののみ取得
setMaxResults Long 取得するオブジェクトの最大数
最大:1000
setPageToken String 取得するページトークン

1.3. レスポンスの内容

ManagedFolders

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

ManagedFolder

メソッド 戻り値 説明
getId String 管理フォルダID
getName String 管理フォルダの名前
getSelfLink String 管理フォルダURI
getKind String リソースの種類
固定文字列:"storage#managedFolder"
getBucket String 管理フォルダーが含まれるバケットの名前
getCreateTime DateTime 作成された時刻
getUpdateTime DateTime 最後に更新された時刻
getMetageneration Long メタ世代番号(metageneration)

2. 管理フォルダを取得

指定した管理フォルダ(マネージドフォルダ)のメタデータを取得します。

2.1. スコープ

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

StorageScopes.CLOUD_PLATFORM
StorageScopes.CLOUD_PLATFORM_READ_ONLY
StorageScopes.DEVSTORAGE_FULL_CONTROL
StorageScopes.DEVSTORAGE_READ_ONLY
StorageScopes.DEVSTORAGE_READ_WRITE

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

2.2. 実行

管理フォルダ名は、ManagedFolderのgetName()で取得できる値を使用します。

public static void main(String[] args) throws Exception{
    Storage storage = getStorage();
    Storage.ManagedFolders folder = storage.managedFolders();
    Storage.ManagedFolders.Get get = folder.get("バケットID","管理フォルダ名");
    
    ManagedFolder res = get.execute();
    System.out.println(res);
}

2.2.1. HTTPリクエスト

GET: https:\https://storage.googleapis.com/storage/v1/b/{バケットID}/managedFolders/{管理フォルダ名}
が実行されます。

2.2.2. クエリパラメータ

クエリパラメータはありません。

2.3. レスポンスの内容

ManagedFolder

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




おしまい。。

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