Class: ClickHouse::Response::Factory
- Inherits:
-
Object
- Object
- ClickHouse::Response::Factory
- Defined in:
- lib/click_house/response/factory.rb
Constant Summary collapse
- KEY_META =
'meta'
- KEY_DATA =
'data'
Class Method Summary collapse
- .empty_exec(config) ⇒ Response::Summary
-
.exec(faraday) ⇒ Response::Summary
Result of execution.
-
.raw(faraday, config) ⇒ ResultSet
Rae ResultSet (without type casting).
- .response(faraday, config) ⇒ ResultSet
Class Method Details
.empty_exec(config) ⇒ Response::Summary
46 47 48 |
# File 'lib/click_house/response/factory.rb', line 46 def self.empty_exec(config) Summary.new(config) end |
.exec(faraday) ⇒ Response::Summary
Result of execution
41 42 43 |
# File 'lib/click_house/response/factory.rb', line 41 def self.exec(faraday) Middleware::SummaryMiddleware.extract(faraday.env) end |
.raw(faraday, config) ⇒ ResultSet
Rae ResultSet (without type casting)
30 31 32 33 34 35 36 |
# File 'lib/click_house/response/factory.rb', line 30 def self.raw(faraday, config) ResultSet.raw( config: config, data: Util.array(faraday.body), summary: Middleware::SummaryMiddleware.extract(faraday.env) ) end |
.response(faraday, config) ⇒ ResultSet
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/click_house/response/factory.rb', line 12 def self.response(faraday, config) body = faraday.body # wrap to be able to use connection#select_one, connection#select_value # with other formats like binary return raw(faraday, config) unless body.is_a?(Hash) return raw(faraday, config) unless body.key?(config.key(KEY_META)) && body.key?(config.key(KEY_DATA)) ResultSet.new( config: config, meta: body.fetch(config.key(KEY_META)), data: body.fetch(config.key(KEY_DATA)), summary: Middleware::SummaryMiddleware.extract(faraday.env) ) end |