Module: Talkbird::Result

Defined in:
lib/talkbird/result.rb,
lib/talkbird/result/basic.rb,
lib/talkbird/result/failure.rb,
lib/talkbird/result/success.rb,
lib/talkbird/result/exception.rb,
lib/talkbird/result/paginated_success.rb

Overview

Encapsulation of the SendBird API responses.

Defined Under Namespace

Classes: Basic, Exception, Failure, PaginatedSuccess, Success

Class Method Summary collapse

Class Method Details

.create(response) ⇒ Object

Select the right result type based on the response.



8
9
10
11
12
13
14
15
16
17
18
# File 'lib/talkbird/result.rb', line 8

def self.create(response)
  status_code = response.code

  if 200 <= status_code && status_code < 400
    PaginatedSuccess.new(response).reduce
  else
    Result::Failure.new(response)
  end
rescue StandardError => exception
  Result::Exception.new(response, exception)
end