Class: Sofia::Client
- Inherits:
-
Object
- Object
- Sofia::Client
- Defined in:
- lib/sofia/client.rb
Constant Summary collapse
- HTTP_METHODS =
%w[get post put patch delete].freeze
Instance Attribute Summary collapse
-
#options ⇒ Object
readonly
: Sofia::Options.
Instance Method Summary collapse
-
#adapter ⇒ Object
: -> Symbol.
-
#base_url ⇒ Object
: -> String.
-
#delete ⇒ Object
: ?{ (Request req) -> untyped } -> Response.
-
#get ⇒ Object
: ?{ (Request req) -> untyped } -> Response.
-
#initialize(base_url:, adapter:, options: nil) ⇒ Client
constructor
: (base_url: untyped, adapter: untyped, ?options: untyped) -> void.
-
#patch ⇒ Object
: ?{ (Request req) -> untyped } -> Response.
-
#post ⇒ Object
: ?{ (Request req) -> untyped } -> Response.
-
#put ⇒ Object
: ?{ (Request req) -> untyped } -> Response.
Constructor Details
#initialize(base_url:, adapter:, options: nil) ⇒ Client
: (base_url: untyped, adapter: untyped, ?options: untyped) -> void
9 10 11 12 13 |
# File 'lib/sofia/client.rb', line 9 def initialize(base_url:, adapter:, options: nil) @base_url = Sofia::Types::Client::BaseUrl.new(base_url) #: Sofia::Types::Client::BaseUrl @adapter = Sofia::Types::Client::Adapter.new(adapter) #: Sofia::Types::Client::Adapter @options = Sofia::Types::Client::Options.new().value #: Sofia::Options end |
Instance Attribute Details
#options ⇒ Object (readonly)
: Sofia::Options
26 27 28 |
# File 'lib/sofia/client.rb', line 26 def @options end |
Instance Method Details
#adapter ⇒ Object
: -> Symbol
21 22 23 |
# File 'lib/sofia/client.rb', line 21 def adapter @adapter.to_sym end |
#base_url ⇒ Object
: -> String
16 17 18 |
# File 'lib/sofia/client.rb', line 16 def base_url @base_url.to_s end |
#delete ⇒ Object
: ?{ (Request req) -> untyped } -> Response
41 |
# File 'lib/sofia/client.rb', line 41 def delete(&) = request(:delete, &) |
#get ⇒ Object
: ?{ (Request req) -> untyped } -> Response
29 |
# File 'lib/sofia/client.rb', line 29 def get(&) = request(:get, &) |
#patch ⇒ Object
: ?{ (Request req) -> untyped } -> Response
38 |
# File 'lib/sofia/client.rb', line 38 def patch(&) = request(:patch, &) |
#post ⇒ Object
: ?{ (Request req) -> untyped } -> Response
32 |
# File 'lib/sofia/client.rb', line 32 def post(&) = request(:post, &) |
#put ⇒ Object
: ?{ (Request req) -> untyped } -> Response
35 |
# File 'lib/sofia/client.rb', line 35 def put(&) = request(:put, &) |