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

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

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, map_sid: nil, key: nil) ⇒ SyncMapItemInstance

Initialize the SyncMapItemInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • account_sid (String)

    The SID of the Account that created this SyncMapItem resource.

  • sid (String)

    The SID of the Call resource to fetch.



312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 312

def initialize(version, payload , service_sid: nil, map_sid: nil, key: nil)
    super(version)
    
    # Marshaled Properties
    @properties = { 
        'key' => payload['key'],
        'account_sid' => payload['account_sid'],
        'service_sid' => payload['service_sid'],
        'map_sid' => payload['map_sid'],
        'url' => payload['url'],
        '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  || @properties['service_sid']  ,'map_sid' => map_sid  || @properties['map_sid']  ,'key' => key  || @properties['key']  , }
end

Instance Method Details

#account_sidString

Returns The SID of the [Account](www.twilio.com/docs/iam/api/account) that created the Map Item resource.

Returns:



354
355
356
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 354

def 
    @properties['account_sid']
end

#contextSyncMapItemContext

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

Returns:



339
340
341
342
343
344
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 339

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

#created_byString

Returns The identity of the Map Item’s creator. If the Map Item is created from the client SDK, the value matches the Access Token’s ‘identity` field. If the Map Item was created from the REST API, the value is `system`.

Returns:

  • (String)

    The identity of the Map Item’s creator. If the Map Item is created from the client SDK, the value matches the Access Token’s ‘identity` field. If the Map Item was created from the REST API, the value is `system`.



408
409
410
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 408

def created_by
    @properties['created_by']
end

#dataHash

Returns An arbitrary, schema-less object that the Map Item stores. Can be up to 16 KiB in length.

Returns:

  • (Hash)

    An arbitrary, schema-less object that the Map Item stores. Can be up to 16 KiB in length.



384
385
386
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 384

def data
    @properties['data']
end

#date_createdTime

Returns The date and time in GMT when the resource was created specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



396
397
398
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 396

def date_created
    @properties['date_created']
end

#date_expiresTime

Returns The date and time in GMT when the Map Item expires and will be deleted, specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format. If the Map Item does not expire, this value is ‘null`. The Map Item might not be deleted immediately after it expires.

Returns:

  • (Time)

    The date and time in GMT when the Map Item expires and will be deleted, specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format. If the Map Item does not expire, this value is ‘null`. The Map Item might not be deleted immediately after it expires.



390
391
392
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 390

def date_expires
    @properties['date_expires']
end

#date_updatedTime

Returns The date and time in GMT when the resource was last updated specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



402
403
404
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 402

def date_updated
    @properties['date_updated']
end

#delete(if_match: :unset) ⇒ Boolean

Delete the SyncMapItemInstance

Parameters:

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

    If provided, applies this mutation if (and only if) the “revision” field of this [map item] matches the provided value. This matches the semantics of (and is implemented with) the HTTP [If-Match header](developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match).

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



416
417
418
419
420
421
422
423
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 416

def delete(
    if_match: :unset
)

    context.delete(
        if_match: if_match, 
    )
end

#fetchSyncMapItemInstance

Fetch the SyncMapItemInstance

Returns:



428
429
430
431
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 428

def fetch

    context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



467
468
469
470
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 467

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

#keyString

Returns The unique, user-defined key for the Map Item.

Returns:

  • (String)

    The unique, user-defined key for the Map Item.



348
349
350
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 348

def key
    @properties['key']
end

#map_sidString

Returns The SID of the Sync Map that contains the Map Item.

Returns:

  • (String)

    The SID of the Sync Map that contains the Map Item.



366
367
368
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 366

def map_sid
    @properties['map_sid']
end

#revisionString

Returns The current revision of the Map Item, represented as a string.

Returns:

  • (String)

    The current revision of the Map Item, represented as a string.



378
379
380
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 378

def revision
    @properties['revision']
end

#service_sidString

Returns The SID of the [Sync Service](www.twilio.com/docs/sync/api/service) the resource is associated with.

Returns:



360
361
362
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 360

def service_sid
    @properties['service_sid']
end

#to_sObject

Provide a user friendly representation



460
461
462
463
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 460

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

#update(data: :unset, ttl: :unset, item_ttl: :unset, collection_ttl: :unset, if_match: :unset) ⇒ SyncMapItemInstance

Update the SyncMapItemInstance

Parameters:

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

    A JSON string that represents an arbitrary, schema-less object that the Map Item stores. Can be up to 16 KiB in length.

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

    An alias for ‘item_ttl`. If both parameters are provided, this value is ignored.

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

    How long, [in seconds](www.twilio.com/docs/sync/limits#sync-payload-limits), before the Map Item expires (time-to-live) and is deleted.

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

    How long, [in seconds](www.twilio.com/docs/sync/limits#sync-payload-limits), before the Map Item’s parent Sync Map expires (time-to-live) and is deleted. This parameter can only be used when the Map Item’s ‘data` or `ttl` is updated in the same request.

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

    If provided, applies this mutation if (and only if) the “revision” field of this [map item] matches the provided value. This matches the semantics of (and is implemented with) the HTTP [If-Match header](developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match).

Returns:



441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 441

def update(
    data: :unset, 
    ttl: :unset, 
    item_ttl: :unset, 
    collection_ttl: :unset, 
    if_match: :unset
)

    context.update(
        data: data, 
        ttl: ttl, 
        item_ttl: item_ttl, 
        collection_ttl: collection_ttl, 
        if_match: if_match, 
    )
end

#urlString

Returns The absolute URL of the Map Item resource.

Returns:

  • (String)

    The absolute URL of the Map Item resource.



372
373
374
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 372

def url
    @properties['url']
end