Class: Twilio::REST::Sync::V1::ServiceContext::SyncMapContext::SyncMapPermissionInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, map_sid: nil, identity: nil) ⇒ SyncMapPermissionInstance

Initialize the SyncMapPermissionInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • service_sid (String) (defaults to: nil)

    The SID of the Sync Service the resource is associated with.

  • map_sid (String) (defaults to: nil)

    The SID of the Sync Map to which the Permission applies.

  • identity (String) (defaults to: nil)

    The application-defined string that uniquely identifies the User's Sync Map Permission resource to fetch.


245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 245

def initialize(version, payload, service_sid: nil, map_sid: nil, identity: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'account_sid' => payload['account_sid'],
      'service_sid' => payload['service_sid'],
      'map_sid' => payload['map_sid'],
      'identity' => payload['identity'],
      'read' => payload['read'],
      'write' => payload['write'],
      'manage' => payload['manage'],
      'url' => payload['url'],
  }

  # Context
  @instance_context = nil
  @params = {
      'service_sid' => service_sid,
      'map_sid' => map_sid,
      'identity' => identity || @properties['identity'],
  }
end

Instance Method Details

#account_sidString

Returns The SID of the Account that created the resource.

Returns:

  • (String)

    The SID of the Account that created the resource


287
288
289
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 287

def 
  @properties['account_sid']
end

#contextSyncMapPermissionContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:


273
274
275
276
277
278
279
280
281
282
283
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 273

def context
  unless @instance_context
    @instance_context = SyncMapPermissionContext.new(
        @version,
        @params['service_sid'],
        @params['map_sid'],
        @params['identity'],
    )
  end
  @instance_context
end

#deleteBoolean

Delete the SyncMapPermissionInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise


343
344
345
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 343

def delete
  context.delete
end

#fetchSyncMapPermissionInstance

Fetch the SyncMapPermissionInstance

Returns:


336
337
338
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 336

def fetch
  context.fetch
end

#identityString

Returns The identity of the user to whom the Sync Document Permission applies.

Returns:

  • (String)

    The identity of the user to whom the Sync Document Permission applies


305
306
307
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 305

def identity
  @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation


369
370
371
372
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 369

def inspect
  values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Sync.V1.SyncMapPermissionInstance #{values}>"
end

#manageBoolean

Returns Manage access.

Returns:

  • (Boolean)

    Manage access


323
324
325
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 323

def manage
  @properties['manage']
end

#map_sidString

Returns Sync Map SID.

Returns:

  • (String)

    Sync Map SID


299
300
301
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 299

def map_sid
  @properties['map_sid']
end

#readBoolean

Returns Read access.

Returns:

  • (Boolean)

    Read access


311
312
313
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 311

def read
  @properties['read']
end

#service_sidString

Returns The SID of the Sync Service that the resource is associated with.

Returns:

  • (String)

    The SID of the Sync Service that the resource is associated with


293
294
295
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 293

def service_sid
  @properties['service_sid']
end

#to_sObject

Provide a user friendly representation


362
363
364
365
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 362

def to_s
  values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Sync.V1.SyncMapPermissionInstance #{values}>"
end

#update(read: nil, write: nil, manage: nil) ⇒ SyncMapPermissionInstance

Update the SyncMapPermissionInstance

Parameters:

  • read (Boolean) (defaults to: nil)

    Whether the identity can read the Sync Map and its Items. Default value is `false`.

  • write (Boolean) (defaults to: nil)

    Whether the identity can create, update, and delete Items in the Sync Map. Default value is `false`.

  • manage (Boolean) (defaults to: nil)

    Whether the identity can delete the Sync Map. Default value is `false`.

Returns:


356
357
358
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 356

def update(read: nil, write: nil, manage: nil)
  context.update(read: read, write: write, manage: manage, )
end

#urlString

Returns The absolute URL of the Sync Map Permission resource.

Returns:

  • (String)

    The absolute URL of the Sync Map Permission resource


329
330
331
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 329

def url
  @properties['url']
end

#writeBoolean

Returns Write access.

Returns:

  • (Boolean)

    Write access


317
318
319
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb', line 317

def write
  @properties['write']
end