Class: Google::Apis::DriveV3::Permission

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/drive_v3/classes.rb,
generated/google/apis/drive_v3/representations.rb,
generated/google/apis/drive_v3/representations.rb

Overview

A permission for a file. A permission grants a user, group, domain or the world access to a file or a folder hierarchy.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Permission

Returns a new instance of Permission.



1214
1215
1216
# File 'generated/google/apis/drive_v3/classes.rb', line 1214

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#allow_file_discoveryBoolean Also known as: allow_file_discovery?

Whether the permission allows the file to be discovered through search. This is only applicable for permissions of type domain or anyone. Corresponds to the JSON property allowFileDiscovery

Returns:

  • (Boolean)


1156
1157
1158
# File 'generated/google/apis/drive_v3/classes.rb', line 1156

def allow_file_discovery
  @allow_file_discovery
end

#display_nameString

A displayable name for users, groups or domains. Corresponds to the JSON property displayName

Returns:

  • (String)


1162
1163
1164
# File 'generated/google/apis/drive_v3/classes.rb', line 1162

def display_name
  @display_name
end

#domainString

The domain to which this permission refers. Corresponds to the JSON property domain

Returns:

  • (String)


1167
1168
1169
# File 'generated/google/apis/drive_v3/classes.rb', line 1167

def domain
  @domain
end

#email_addressString

The email address of the user or group to which this permission refers. Corresponds to the JSON property emailAddress

Returns:

  • (String)


1172
1173
1174
# File 'generated/google/apis/drive_v3/classes.rb', line 1172

def email_address
  @email_address
end

#expiration_timeDateTime

The time at which this permission will expire (RFC 3339 date-time). Corresponds to the JSON property expirationTime

Returns:

  • (DateTime)


1177
1178
1179
# File 'generated/google/apis/drive_v3/classes.rb', line 1177

def expiration_time
  @expiration_time
end

#idString

The ID of this permission. This is a unique identifier for the grantee, and is published in User resources as permissionId. Corresponds to the JSON property id

Returns:

  • (String)


1183
1184
1185
# File 'generated/google/apis/drive_v3/classes.rb', line 1183

def id
  @id
end

#kindString

Identifies what kind of resource this is. Value: the fixed string "drive# permission". Corresponds to the JSON property kind

Returns:

  • (String)


1189
1190
1191
# File 'generated/google/apis/drive_v3/classes.rb', line 1189

def kind
  @kind
end

A link to the user's profile photo, if available. Corresponds to the JSON property photoLink

Returns:

  • (String)


1194
1195
1196
# File 'generated/google/apis/drive_v3/classes.rb', line 1194

def photo_link
  @photo_link
end

#roleString

The role granted by this permission. Valid values are:

  • owner
  • writer
  • commenter
  • reader Corresponds to the JSON property role

Returns:

  • (String)


1203
1204
1205
# File 'generated/google/apis/drive_v3/classes.rb', line 1203

def role
  @role
end

#typeString

The type of the grantee. Valid values are:

  • user
  • group
  • domain
  • anyone Corresponds to the JSON property type

Returns:

  • (String)


1212
1213
1214
# File 'generated/google/apis/drive_v3/classes.rb', line 1212

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
# File 'generated/google/apis/drive_v3/classes.rb', line 1219

def update!(**args)
  @allow_file_discovery = args[:allow_file_discovery] if args.key?(:allow_file_discovery)
  @display_name = args[:display_name] if args.key?(:display_name)
  @domain = args[:domain] if args.key?(:domain)
  @email_address = args[:email_address] if args.key?(:email_address)
  @expiration_time = args[:expiration_time] if args.key?(:expiration_time)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @photo_link = args[:photo_link] if args.key?(:photo_link)
  @role = args[:role] if args.key?(:role)
  @type = args[:type] if args.key?(:type)
end