Class: Google::Apis::DriveV2::Permission
- Inherits:
-
Object
- Object
- Google::Apis::DriveV2::Permission
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/drive_v2/classes.rb,
lib/google/apis/drive_v2/representations.rb,
lib/google/apis/drive_v2/representations.rb
Overview
A permission for a file.
Defined Under Namespace
Classes: PermissionDetail, TeamDrivePermissionDetail
Instance Attribute Summary collapse
-
#additional_roles ⇒ Array<String>
Additional roles for this user.
-
#auth_key ⇒ String
Deprecated.
-
#deleted ⇒ Boolean
(also: #deleted?)
Whether the account associated with this permission has been deleted.
-
#domain ⇒ String
The domain name of the entity this permission refers to.
-
#email_address ⇒ String
The email address of the user or group this permission refers to.
-
#etag ⇒ String
The ETag of the permission.
-
#expiration_date ⇒ DateTime
The time at which this permission will expire (RFC 3339 date-time).
-
#id ⇒ String
The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources.
-
#kind ⇒ String
This is always drive#permission.
-
#name ⇒ String
The name for this permission.
-
#pending_owner ⇒ Boolean
(also: #pending_owner?)
Whether the account associated with this permission is a pending owner.
-
#permission_details ⇒ Array<Google::Apis::DriveV2::Permission::PermissionDetail>
Details of whether the permissions on this shared drive item are inherited or directly on this item.
-
#photo_link ⇒ String
A link to the profile photo, if available.
-
#role ⇒ String
The primary role for this user.
-
#self_link ⇒ String
A link back to this permission.
-
#team_drive_permission_details ⇒ Array<Google::Apis::DriveV2::Permission::TeamDrivePermissionDetail>
Deprecated - use permissionDetails instead.
-
#type ⇒ String
The account type.
-
#value ⇒ String
The email address or domain name for the entity.
-
#view ⇒ String
Indicates the view for this permission.
-
#with_link ⇒ Boolean
(also: #with_link?)
Whether the link is required for this permission.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Permission
constructor
A new instance of Permission.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Permission
Returns a new instance of Permission.
3266 3267 3268 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3266 def initialize(**args) update!(**args) end |
Instance Attribute Details
#additional_roles ⇒ Array<String>
Additional roles for this user. Only commenter is currently allowed, though
more may be supported in the future.
Corresponds to the JSON property additionalRoles
3136 3137 3138 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3136 def additional_roles @additional_roles end |
#auth_key ⇒ String
Deprecated.
Corresponds to the JSON property authKey
3141 3142 3143 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3141 def auth_key @auth_key end |
#deleted ⇒ Boolean Also known as: deleted?
Whether the account associated with this permission has been deleted. This
field only pertains to user and group permissions.
Corresponds to the JSON property deleted
3147 3148 3149 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3147 def deleted @deleted end |
#domain ⇒ String
The domain name of the entity this permission refers to. This is an output-
only field which is present when the permission type is user, group or domain.
Corresponds to the JSON property domain
3154 3155 3156 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3154 def domain @domain end |
#email_address ⇒ String
The email address of the user or group this permission refers to. This is an
output-only field which is present when the permission type is user or group.
Corresponds to the JSON property emailAddress
3160 3161 3162 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3160 def email_address @email_address end |
#etag ⇒ String
The ETag of the permission.
Corresponds to the JSON property etag
3165 3166 3167 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3165 def etag @etag end |
#expiration_date ⇒ DateTime
The time at which this permission will expire (RFC 3339 date-time). Expiration dates have the following restrictions:
- They cannot be set on shared drive items
- They can only be set on user and group permissions
- The date must be in the future
- The date cannot be more than a year in the future
- The date can only be set on drive.permissions.update or drive.permissions.
patch requests
Corresponds to the JSON property
expirationDate
3177 3178 3179 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3177 def expiration_date @expiration_date end |
#id ⇒ String
The ID of the user this permission refers to, and identical to the
permissionId in the About and Files resources. When making a drive.permissions.
insert request, exactly one of the id or value fields must be specified unless
the permission type is anyone, in which case both id and value are ignored.
Corresponds to the JSON property id
3185 3186 3187 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3185 def id @id end |
#kind ⇒ String
This is always drive#permission.
Corresponds to the JSON property kind
3190 3191 3192 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3190 def kind @kind end |
#name ⇒ String
The name for this permission.
Corresponds to the JSON property name
3195 3196 3197 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3195 def name @name end |
#pending_owner ⇒ Boolean Also known as: pending_owner?
Whether the account associated with this permission is a pending owner. Only
populated for user type permissions for files that are not in a shared drive.
Corresponds to the JSON property pendingOwner
3201 3202 3203 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3201 def pending_owner @pending_owner end |
#permission_details ⇒ Array<Google::Apis::DriveV2::Permission::PermissionDetail>
Details of whether the permissions on this shared drive item are inherited or
directly on this item. This is an output-only field which is present only for
shared drive items.
Corresponds to the JSON property permissionDetails
3209 3210 3211 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3209 def @permission_details end |
#photo_link ⇒ String
A link to the profile photo, if available.
Corresponds to the JSON property photoLink
3214 3215 3216 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3214 def photo_link @photo_link end |
#role ⇒ String
The primary role for this user. While new values may be supported in the future, the following are currently allowed:
- owner
- organizer
- fileOrganizer
- writer
- reader
Corresponds to the JSON property
role
3225 3226 3227 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3225 def role @role end |
#self_link ⇒ String
A link back to this permission.
Corresponds to the JSON property selfLink
3230 3231 3232 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3230 def self_link @self_link end |
#team_drive_permission_details ⇒ Array<Google::Apis::DriveV2::Permission::TeamDrivePermissionDetail>
Deprecated - use permissionDetails instead.
Corresponds to the JSON property teamDrivePermissionDetails
3235 3236 3237 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3235 def @team_drive_permission_details end |
#type ⇒ String
The account type. Allowed values are:
- user
- group
- domain
- anyone
Corresponds to the JSON property
type
3244 3245 3246 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3244 def type @type end |
#value ⇒ String
The email address or domain name for the entity. This is used during inserts
and is not populated in responses. When making a drive.permissions.insert
request, exactly one of the id or value fields must be specified unless the
permission type is anyone, in which case both id and value are ignored.
Corresponds to the JSON property value
3252 3253 3254 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3252 def value @value end |
#view ⇒ String
Indicates the view for this permission. Only populated for permissions that
belong to a view. published is the only supported value.
Corresponds to the JSON property view
3258 3259 3260 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3258 def view @view end |
#with_link ⇒ Boolean Also known as: with_link?
Whether the link is required for this permission.
Corresponds to the JSON property withLink
3263 3264 3265 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3263 def with_link @with_link end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 |
# File 'lib/google/apis/drive_v2/classes.rb', line 3271 def update!(**args) @additional_roles = args[:additional_roles] if args.key?(:additional_roles) @auth_key = args[:auth_key] if args.key?(:auth_key) @deleted = args[:deleted] if args.key?(:deleted) @domain = args[:domain] if args.key?(:domain) @email_address = args[:email_address] if args.key?(:email_address) @etag = args[:etag] if args.key?(:etag) @expiration_date = args[:expiration_date] if args.key?(:expiration_date) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @pending_owner = args[:pending_owner] if args.key?(:pending_owner) @permission_details = args[:permission_details] if args.key?(:permission_details) @photo_link = args[:photo_link] if args.key?(:photo_link) @role = args[:role] if args.key?(:role) @self_link = args[:self_link] if args.key?(:self_link) @team_drive_permission_details = args[:team_drive_permission_details] if args.key?(:team_drive_permission_details) @type = args[:type] if args.key?(:type) @value = args[:value] if args.key?(:value) @view = args[:view] if args.key?(:view) @with_link = args[:with_link] if args.key?(:with_link) end |