Sha256: bbbb01f0d7df615f38811b898076153376c0636ebed4208fad830f74f403611d
Contents?: true
Size: 724 Bytes
Versions: 6
Compression:
Stored size: 724 Bytes
Contents
require_relative "base_client" module PortalConnectors class PartnerClient < BaseClient def fetch_stocks url = "#{host}/stocks" res = get_with_signature(url, {}) json_stocks = JSON.parse(res.body_str) self.class.cached_stocks = json_stocks [json_stocks, res.response_code == 200] rescue => e [e.inspect, false] end def self.cached_stocks=(json_stocks) PortalConnectors.redis.set(cached_key_for(["stocks"]), json_stocks.to_json) end def self.cached_stocks cached_key = cached_key_for(["stocks"]) return nil unless PortalConnectors.redis.exists(cached_key) JSON.parse(PortalConnectors.redis.get(cached_key)) rescue nil end end end
Version data entries
6 entries across 6 versions & 1 rubygems