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.



622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 622

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:



665
666
667
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 665

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:



650
651
652
653
654
655
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 650

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



719
720
721
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 719

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.



695
696
697
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 695

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:



707
708
709
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 707

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.



701
702
703
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 701

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:



713
714
715
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 713

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



727
728
729
730
731
732
733
734
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 727

def delete(
  if_match: :unset
)

    context.delete(
        if_match: if_match, 
    )
end

#fetchSyncMapItemInstance

Fetch the SyncMapItemInstance

Returns:



739
740
741
742
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 739

def fetch

    context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



778
779
780
781
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 778

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.



659
660
661
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 659

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.



677
678
679
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 677

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.



689
690
691
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 689

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:



671
672
673
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 671

def service_sid
    @properties['service_sid']
end

#to_sObject

Provide a user friendly representation



771
772
773
774
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 771

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:



752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 752

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.



683
684
685
# File 'lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb', line 683

def url
    @properties['url']
end