LoginSignup
1
1

[Google Drive API v3] Javaで共有ドライブのビューを表示・非表示にする

Posted at

Google Drive API v3(Java)を使用して、
共有ドライブのビューを表示・非表示にする方法
についてご紹介します。

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

No 目次
1 共有ドライブを非表示
1 スコープ
2 実行
3 レスポンスの内容
2 共有ドライブを表示
1 スコープ
2 実行
3 レスポンスの内容

1. 共有ドライブを非表示

共有ドライブのビューを非表示にします。

1.1. スコープ

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

DriveScopes.DRIVE

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

1.2. 実行

setFieldsでレスポンスで取得したいフィールド(Drive)を指定できます。
指定しない場合は、必要最小限のレスポンスしか返ってきません。
ここでは「*」(全て取得)を指定しています。

public static void main(String[] args) throws Exception{
    Drive drive = getDrive();
    Drive.Drives drives = drive.drives();
    
    Drive.Drives.Unhide unhide = drives.unhide("共有ドライブID");
    unhide.setFields("*");
    
    com.google.api.services.drive.model.Drive res = unhide.execute();
    System.out.println(res);
}

1.2.1. HTTPリクエスト

POST: https://www.googleapis.com/drive/v3/drives/{ドライブID}/unhide
が実行されます。

1.2.2. クエリパラメータ

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

1.2.3. リクエストボディ

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

1.3. レスポンスの内容

Drive

(「com.google.api.services.drive.model.Drive」のDriveです)

フィールド メソッド 戻り値 説明
id getId String 共有ドライブID
name getName String 共有ドライブの名前
colorRgb getColorRgb String 共有ドライブの色
kind getKind String リソースの種類
固定文字列:"drive#drive"
backgroundImageLink getBackgroundImageLink String 共有ドライブの背景イメージへの短期間のリンク
capabilities getCapabilities Capabilities 現在のユーザーが共有ドライブ上で持つ機能
themeId getThemeId String 背景画像と色が設定されるテーマのID
backgroundImageFile getBackgroundImageFile BackgroundImageFile 共有ドライブの背景画像を設定するための画像ファイルとトリミング パラメータ
createdTime getCreatedTime String 共有ドライブが作成された時刻 (RFC 3339 日付/時刻)。
hidden getHidden Boolean 共有ドライブをデフォルトのビューで非表示にするか
restrictions getRestrictions Restrictions 共有ドライブまたは共有ドライブ内のアイテムに適用される一連の制限
orgUnitId getOrgUnitId String 共有ドライブの組織単位

Capabilities

メソッド 戻り値 説明
getCanAddChildren Boolean 現在のユーザーが共有ドライブ内のフォルダーに子を追加できるか
getCanComment Boolean 現在のユーザーが共有ドライブ内のファイルにコメントできるか
getCanCopy Boolean 現在のユーザーが共有ドライブ内のファイルをコピーできるか
getCanDeleteDrive Boolean 現在のユーザーが共有ドライブを削除できるか
getCanDownload Boolean 現在のユーザーが共有ドライブにファイルをダウンロードできるか
getCanEdit Boolean 現在のユーザーが共有ドライブ内のファイルを編集できるか
getCanListChildren Boolean 現在のユーザーが共有ドライブ内のフォルダーの子の一覧を表示できるか
getCanManageMembers Boolean 現在のユーザーが共有ドライブにメンバーを追加、削除、または役割を変更できるか
getCanReadRevisions Boolean 現在のユーザーが共有ドライブ内のファイルのリビジョン リソースを読み取ることができるか
getCanRename Boolean 現在のユーザーが共有ドライブ内のファイルまたはフォルダーの名前を変更できるか
getCanRenameDrive Boolean 現在のユーザーが共有ドライブの名前を変更できるか
getCanChangeDriveBackground Boolean 現在のユーザーが共有ドライブの背景を変更できるか
getCanShare Boolean 現在のユーザーが共有ドライブ内のファイルまたはフォルダーを共有できるか
getCanChangeCopyRequiresWriterPermissionRestriction Boolean 現在のユーザーがcopyRequiresWriterPermission共有ドライブの制限を変更できるか
getCanChangeDomainUsersOnlyRestriction Boolean 現在のユーザーがdomainUsersOnly共有ドライブの制限を変更できるか
getCanChangeDriveMembersOnlyRestriction Boolean 現在のユーザーがdriveMembersOnly共有ドライブの制限を変更できるか
getCanChangeSharingFoldersRequiresOrganizerPermissionRestriction Boolean 現在のユーザーがsharingFoldersRequiresOrganizerPermission共有ドライブの制限を変更できる
getCanResetDriveRestrictions Boolean 現在のユーザーが共有ドライブの制限をデフォルトにリセットできるか
getCanDeleteChildren Boolean 現在のユーザーが共有ドライブ内のフォルダーから子を削除できるか
getCanTrashChildren Boolean 現在のユーザーが共有ドライブ内のフォルダーから子をゴミ箱に入れることができるか

BackgroundImageFile

メソッド 戻り値 説明
gteId String 背景画像として使用するGoogleドライブ内の画像ファイルID
getXCoordinate Float 背景画像のトリミング領域の左上隅のX座標(0〜1)
getYCoordinate Float 背景画像のトリミング領域の左上隅のY座標(0〜1)
getWidth Float トリミングされたイメージの幅(0〜1)

Restrictions

メソッド 戻り値 説明
getCopyRequiresWriterPermission Boolean 共有ドライブ内のファイルをコピー、印刷、またはダウンロードするオプションを、読者とコメント投稿者に対して無効にするか
getDomainUsersOnly Boolean 共有ドライブおよび共有ドライブ内のアイテムへのアクセスを、共有ドライブが属するドメインのユーザーに制限するか
getDriveMembersOnly Boolean 共有ドライブ内のアイテムへのアクセスをそのメンバーに制限するか
getAdminManagedRestrictions Boolean 制限を変更するには、共有ドライブに対する管理者権限が必要か
getSharingFoldersRequiresOrganizerPermission Boolean オーガナイザーの役割を持つユーザーのみがフォルダーを共有するか

2. 共有ドライブを表示

非表示中の共有ドライブのビューを表示します。

2.1. スコープ

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

DriveScopes.DRIVE

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

2.2. 実行

setFieldsでレスポンスで取得したいフィールド(Drive)を指定できます。
指定しない場合は、必要最小限のレスポンスしか返ってきません。
ここでは「*」(全て取得)を指定しています。

public static void main(String[] args) throws Exception{
    Drive drive = getDrive();
    Drive.Drives drives = drive.drives();
    
    Drive.Drives.Hide hide = drives.hide("共有ドライブID");
    hide.setFields("*");
    
    com.google.api.services.drive.model.Drive res = hide.execute();
    System.out.println(res);
}

2.2.1. HTTPリクエスト

POST: https://www.googleapis.com/drive/v3/drives/{ドライブID}/hide
が実行されます。

2.2.2. クエリパラメータ

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

2.2.3. リクエストボディ

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

2.3. レスポンスの内容

Drive

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



おしまい。。
1
1
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
1
1