Class: Twilio::REST::Events::V1::SubscriptionContext

Inherits:
InstanceContext show all
Defined in:
lib/twilio-ruby/rest/events/v1/subscription.rb,
lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb

Defined Under Namespace

Classes: SubscribedEventContext, SubscribedEventInstance, SubscribedEventInstanceMetadata, SubscribedEventList, SubscribedEventListResponse, SubscribedEventPage, SubscribedEventPageMetadata

Instance Method Summary collapse

Constructor Details

#initialize(version, sid) ⇒ SubscriptionContext

Initialize the SubscriptionContext

Parameters:

  • version (Version)

    Version that contains the resource

  • sid (String)

    A 34 character string that uniquely identifies this Subscription.



235
236
237
238
239
240
241
242
243
244
245
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 235

def initialize(version, sid)
    super(version)
    

    # Path Solution
    @solution = { sid: sid,  }
    @uri = "/Subscriptions/#{@solution[:sid]}"

    # Dependents
    @subscribed_events = nil
end

Instance Method Details

#deleteBoolean

Delete the SubscriptionInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



249
250
251
252
253
254
255
256
257
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 249

def delete

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    

    @version.delete('DELETE', @uri, headers: headers)
end

#delete_with_metadataBoolean

Delete the SubscriptionInstanceMetadata

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 262

def 

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
      response = @version.('DELETE', @uri, headers: headers)
      subscription_instance = SubscriptionInstance.new(
          @version,
          response.body,
          account_sid: @solution[:account_sid],
          sid: @solution[:sid],
      )
      SubscriptionInstanceMetadata.new(@version, subscription_instance, response.headers, response.status_code)
end

#fetchSubscriptionInstance

Fetch the SubscriptionInstance

Returns:



281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 281

def fetch

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    payload = @version.fetch('GET', @uri, headers: headers)
    SubscriptionInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end

#fetch_with_metadataSubscriptionInstance

Fetch the SubscriptionInstanceMetadata

Returns:



300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 300

def 

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    response = @version.('GET', @uri, headers: headers)
    subscription_instance = SubscriptionInstance.new(
        @version,
        response.body,
        sid: @solution[:sid],
    )
    SubscriptionInstanceMetadata.new(
        @version,
        subscription_instance,
        response.headers,
        response.status_code
    )
end

#inspectObject

Provide a detailed, user friendly representation



409
410
411
412
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 409

def inspect
    context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
    "#<Twilio.Events.V1.SubscriptionContext #{context}>"
end

#subscribed_events(type = :unset) ⇒ SubscribedEventList, SubscribedEventContext

Access the subscribed_events

Returns:

Raises:

  • (ArgumentError)


384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 384

def subscribed_events(type=:unset)

    raise ArgumentError, 'type cannot be nil' if type.nil?

    if type != :unset
        return SubscribedEventContext.new(@version, @solution[:sid],type )
    end

    unless @subscribed_events
        @subscribed_events = SubscribedEventList.new(
            @version, subscription_sid: @solution[:sid], )
    end

 @subscribed_events
end

#to_sObject

Provide a user friendly representation



402
403
404
405
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 402

def to_s
    context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
    "#<Twilio.Events.V1.SubscriptionContext #{context}>"
end

#update(description: :unset) ⇒ SubscriptionInstance

Update the SubscriptionInstance

Parameters:

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

    A human readable description for the Subscription.

Returns:



326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 326

def update(
    description: :unset
)

    data = Twilio::Values.of({
        'Description' => description,
    })

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    payload = @version.update('POST', @uri, data: data, headers: headers)
    SubscriptionInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end

#update_with_metadata(description: :unset) ⇒ SubscriptionInstance

Update the SubscriptionInstanceMetadata

Parameters:

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

    A human readable description for the Subscription.

Returns:



352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 352

def (
  description: :unset
)

    data = Twilio::Values.of({
        'Description' => description,
    })

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    response = @version.('POST', @uri, data: data, headers: headers)
    subscription_instance = SubscriptionInstance.new(
        @version,
        response.body,
        sid: @solution[:sid],
    )
    SubscriptionInstanceMetadata.new(
        @version,
        subscription_instance,
        response.headers,
        response.status_code
    )
end