Class: Twilio::REST::Preview::Sync::ServiceContext::DocumentContext::DocumentPermissionInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb

Overview

PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact [email protected].

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, document_sid: nil, identity: nil) ⇒ DocumentPermissionInstance

Initialize the DocumentPermissionInstance



251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 251

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

  # Marshaled Properties
  @properties = {
      'account_sid' => payload['account_sid'],
      'service_sid' => payload['service_sid'],
      'document_sid' => payload['document_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,
      'document_sid' => document_sid,
      'identity' => identity || @properties['identity'],
  }
end

Instance Method Details

#account_sidString



293
294
295
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 293

def 
  @properties['account_sid']
end

#contextDocumentPermissionContext

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



279
280
281
282
283
284
285
286
287
288
289
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 279

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

#deleteBoolean

Delete the DocumentPermissionInstance



349
350
351
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 349

def delete
  context.delete
end

#document_sidString



305
306
307
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 305

def document_sid
  @properties['document_sid']
end

#fetchDocumentPermissionInstance

Fetch the DocumentPermissionInstance



342
343
344
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 342

def fetch
  context.fetch
end

#identityString



311
312
313
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 311

def identity
  @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



375
376
377
378
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 375

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

#manageBoolean



329
330
331
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 329

def manage
  @properties['manage']
end

#readBoolean



317
318
319
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 317

def read
  @properties['read']
end

#service_sidString



299
300
301
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 299

def service_sid
  @properties['service_sid']
end

#to_sObject

Provide a user friendly representation



368
369
370
371
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 368

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

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

Update the DocumentPermissionInstance



362
363
364
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 362

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

#urlString



335
336
337
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 335

def url
  @properties['url']
end

#writeBoolean



323
324
325
# File 'lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb', line 323

def write
  @properties['write']
end