Class: Twilio::REST::Sync::V1::ServiceContext::DocumentInstance

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

Overview

PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, sid: nil) ⇒ DocumentInstance

Initialize the DocumentInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • service_sid (String) (defaults to: nil)

    The unique SID identifier of the Service Instance that hosts this Document.

  • sid (String) (defaults to: nil)

    The sid



284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 284

def initialize(version, payload, service_sid: nil, sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'unique_name' => payload['unique_name'],
      'account_sid' => payload['account_sid'],
      'service_sid' => payload['service_sid'],
      'url' => payload['url'],
      'links' => payload['links'],
      'revision' => payload['revision'],
      'data' => payload['data'],
      'date_expires' => Twilio.deserialize_iso8601_datetime(payload['date_expires']),
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'created_by' => payload['created_by'],
  }

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

Instance Method Details

#account_sidString

Returns The unique SID identifier of the Twilio Account.

Returns:

  • (String)

    The unique SID identifier of the Twilio Account.



333
334
335
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 333

def 
  @properties['account_sid']
end

#contextDocumentContext

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

Returns:



312
313
314
315
316
317
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 312

def context
  unless @instance_context
    @instance_context = DocumentContext.new(@version, @params['service_sid'], @params['sid'], )
  end
  @instance_context
end

#created_byString

Returns The identity of the Document creator.

Returns:

  • (String)

    The identity of the Document creator.



387
388
389
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 387

def created_by
  @properties['created_by']
end

#dataHash

Returns Contains arbitrary user-defined, schema-less data that this Document stores, represented by a JSON object, up to 16KB.

Returns:

  • (Hash)

    Contains arbitrary user-defined, schema-less data that this Document stores, represented by a JSON object, up to 16KB.



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

def data
  @properties['data']
end

#date_createdTime

Returns The date this Document was created, given in UTC ISO 8601 format.

Returns:

  • (Time)

    The date this Document was created, given in UTC ISO 8601 format.



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

def date_created
  @properties['date_created']
end

#date_expiresTime

Returns Contains the date this Document expires and gets deleted automatically.

Returns:

  • (Time)

    Contains the date this Document expires and gets deleted automatically.



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

def date_expires
  @properties['date_expires']
end

#date_updatedTime

Returns Specifies the date this Document was last updated, given in UTC ISO 8601 format.

Returns:

  • (Time)

    Specifies the date this Document was last updated, given in UTC ISO 8601 format.



381
382
383
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 381

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the DocumentInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



401
402
403
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 401

def delete
  context.delete
end

#document_permissionsdocument_permissions

Access the document_permissions

Returns:



419
420
421
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 419

def document_permissions
  context.document_permissions
end

#fetchDocumentInstance

Fetch a DocumentInstance

Returns:



394
395
396
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 394

def fetch
  context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



432
433
434
435
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 432

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

Returns A dictionary of URL links to nested resources of this Document.

Returns:

  • (String)

    A dictionary of URL links to nested resources of this Document.



351
352
353
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 351

def links
  @properties['links']
end

#revisionString

Returns Contains the current revision of this Document, represented by a string identifier.

Returns:

  • (String)

    Contains the current revision of this Document, represented by a string identifier.



357
358
359
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 357

def revision
  @properties['revision']
end

#service_sidString

Returns The unique SID identifier of the Service Instance that hosts this Document.

Returns:

  • (String)

    The unique SID identifier of the Service Instance that hosts this Document.



339
340
341
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 339

def service_sid
  @properties['service_sid']
end

#sidString

Returns The unique 34-character SID identifier of the Document.

Returns:

  • (String)

    The unique 34-character SID identifier of the Document.



321
322
323
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 321

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



425
426
427
428
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 425

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

#unique_nameString

Returns The unique and addressable name of this Document.

Returns:

  • (String)

    The unique and addressable name of this Document.



327
328
329
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 327

def unique_name
  @properties['unique_name']
end

#update(data: :unset, ttl: :unset) ⇒ DocumentInstance

Update the DocumentInstance

Parameters:

  • data (Hash) (defaults to: :unset)

    Contains an arbitrary JSON object to be stored in this Document. Serialized to string to respect HTTP form input, up to 16KB.

  • ttl (String) (defaults to: :unset)

    New time-to-live of this Document in seconds. In the range [1, 31 536 000 (1 year)], or 0 for infinity.

Returns:



412
413
414
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 412

def update(data: :unset, ttl: :unset)
  context.update(data: data, ttl: ttl, )
end

#urlString

Returns The absolute URL for this Document.

Returns:

  • (String)

    The absolute URL for this Document.



345
346
347
# File 'lib/twilio-ruby/rest/sync/v1/service/document.rb', line 345

def url
  @properties['url']
end