Class: Trend::Client
- Inherits:
-
Object
- Object
- Trend::Client
- Defined in:
- lib/trend/client.rb
Constant Summary collapse
- HEADERS =
{ "Content-Type" => "application/json", "Accept" => "application/json", "User-Agent" => "trend-ruby/#{Trend::VERSION}" }
Instance Method Summary collapse
- #anomalies(series, params = {}) ⇒ Object
- #correlation(series, series2, params = {}) ⇒ Object
- #forecast(series, params = {}) ⇒ Object
-
#initialize(url: nil, api_key: nil) ⇒ Client
constructor
A new instance of Client.
Constructor Details
#initialize(url: nil, api_key: nil) ⇒ Client
Returns a new instance of Client.
11 12 13 14 15 16 17 18 |
# File 'lib/trend/client.rb', line 11 def initialize(url: nil, api_key: nil) @api_key = api_key || Trend.api_key @uri = URI.parse(url || Trend.url) @http = Net::HTTP.new(@uri.host, @uri.port) @http.use_ssl = true if @uri.scheme == "https" @http.open_timeout = 3 @http.read_timeout = 5 end |
Instance Method Details
#anomalies(series, params = {}) ⇒ Object
20 21 22 23 |
# File 'lib/trend/client.rb', line 20 def anomalies(series, params = {}) resp = make_request("anomalies", series, params) resp["anomalies"].map { |v| parse_time(v) } end |
#correlation(series, series2, params = {}) ⇒ Object
30 31 32 33 |
# File 'lib/trend/client.rb', line 30 def correlation(series, series2, params = {}) resp = make_request("correlation", series, params.merge(series2: series2)) resp["correlation"] end |
#forecast(series, params = {}) ⇒ Object
25 26 27 28 |
# File 'lib/trend/client.rb', line 25 def forecast(series, params = {}) resp = make_request("forecast", series, params) Hash[resp["forecast"].map { |k, v| [parse_time(k), v] }] end |