Class: Twilio::REST::Verify::V2::ServiceContext::RateLimitContext::BucketInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.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, rate_limit_sid: nil, sid: nil) ⇒ BucketInstance

Initialize the BucketInstance



286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 286

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

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'rate_limit_sid' => payload['rate_limit_sid'],
      'service_sid' => payload['service_sid'],
      'account_sid' => payload['account_sid'],
      'max' => payload['max'].to_i,
      'interval' => payload['interval'].to_i,
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'url' => payload['url'],
  }

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

Instance Method Details

#account_sidString



347
348
349
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 347

def 
  @properties['account_sid']
end

#contextBucketContext

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



315
316
317
318
319
320
321
322
323
324
325
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 315

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

#date_createdTime



365
366
367
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 365

def date_created
  @properties['date_created']
end

#date_updatedTime



371
372
373
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 371

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the BucketInstance



401
402
403
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 401

def delete
  context.delete
end

#fetchBucketInstance

Fetch a BucketInstance



394
395
396
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 394

def fetch
  context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



414
415
416
417
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 414

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

#intervalString



359
360
361
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 359

def interval
  @properties['interval']
end

#maxString



353
354
355
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 353

def max
  @properties['max']
end

#rate_limit_sidString



335
336
337
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 335

def rate_limit_sid
  @properties['rate_limit_sid']
end

#service_sidString



341
342
343
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 341

def service_sid
  @properties['service_sid']
end

#sidString



329
330
331
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 329

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



407
408
409
410
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 407

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

#update(max: :unset, interval: :unset) ⇒ BucketInstance

Update the BucketInstance



387
388
389
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 387

def update(max: :unset, interval: :unset)
  context.update(max: max, interval: interval, )
end

#urlString



377
378
379
# File 'lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb', line 377

def url
  @properties['url']
end