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 that contains the resource

  • payload that contains response from Twilio

  • The SID of the Account that created this SyncMapItem resource.

  • The SID of the Call resource to fetch.



336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 336

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:



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

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:

  • CallContext for this CallInstance



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

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:

  • 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`.



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

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:

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



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

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:



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

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:

  • 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.



414
415
416
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 414

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:



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

def date_updated
    @properties['date_updated']
end

#delete(if_match: :unset) ⇒ Boolean

Delete the SyncMapItemInstance

Parameters:

  • (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:

  • True if delete succeeds, false otherwise



440
441
442
443
444
445
446
447
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 440

def delete(
    if_match: :unset
)

    context.delete(
        if_match: if_match, 
    )
end

#fetchSyncMapItemInstance

Fetch the SyncMapItemInstance

Returns:

  • Fetched SyncMapItemInstance



452
453
454
455
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 452

def fetch

    context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



491
492
493
494
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 491

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:

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



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

def key
    @properties['key']
end

#map_sidString

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

Returns:

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



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

def map_sid
    @properties['map_sid']
end

#revisionString

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

Returns:

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



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

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:



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

def service_sid
    @properties['service_sid']
end

#to_sObject

Provide a user friendly representation



484
485
486
487
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 484

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:

  • (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.

  • (defaults to: :unset)

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

  • (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.

  • (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.

  • (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:

  • Updated SyncMapItemInstance



465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 465

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:

  • The absolute URL of the Map Item resource.



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

def url
    @properties['url']
end