Class: Auth0::Experimentation::Experiments::Client
- Inherits:
-
Object
- Object
- Auth0::Experimentation::Experiments::Client
- Defined in:
- lib/auth0/experimentation/experiments/client.rb
Instance Method Summary collapse
-
#advance_ramp(request_options: {}, **params) ⇒ Auth0::Types::AdvanceRampResponseContent
Increments the current ramp index to the requested target level.
- #initialize(client:) ⇒ void constructor
Constructor Details
#initialize(client:) ⇒ void
10 11 12 |
# File 'lib/auth0/experimentation/experiments/client.rb', line 10 def initialize(client:) @client = client end |
Instance Method Details
#advance_ramp(request_options: {}, **params) ⇒ Auth0::Types::AdvanceRampResponseContent
Increments the current ramp index to the requested target level. Up-only: the target must be the immediate next level in the schedule. Idempotent: calling with the current level returns success without writing anything.
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/auth0/experimentation/experiments/client.rb', line 34 def advance_ramp(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) request_data = Auth0::Experimentation::Experiments::Types::AdvanceRampRequestContent.new(params).to_h non_body_param_names = %w[id] body = request_data.except(*non_body_param_names) request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "POST", path: "experimentation/experiments/#{URI.encode_uri_component(params[:id].to_s)}/advance-ramp", body: body, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Auth0::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) (response.body.to_s.empty? ? nil : Auth0::Types::AdvanceRampResponseContent.load(response.body)) else error_class = Auth0::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |