sensei_eod_utils 0.0.49 → 0.0.50
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/eod_facade/dividends.rb +37 -0
- data/sensei_eod_utils.gemspec +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c085ec908f16d15fa1688ad36fd1204afe64075636d0a1683d09be9a3e7cfeba
|
4
|
+
data.tar.gz: 9ddf26fe2eb2468d76856fd72f26da018d50320a4af9f78848dee1a7d42179e4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: be977b4b3359a38f56ddb8792f6f18f105d2eb49b2a730f5340077ea940e475b6701fe4922477525464c77d7bef561ef738f654dfdec3f1bf7d727ab9a94a3ea
|
7
|
+
data.tar.gz: e101ba44aee438ae8d2a4e442d83017795b9e2b020d2a721d9be997c7c506cfe9b4d74d37a954fbb65cb556c72f92828d3ac064ca6c3990e53853edc5f1ea8be
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'oj'
|
4
|
+
require_relative '../cache/redis_cache.rb'
|
5
|
+
|
6
|
+
module EodFacade
|
7
|
+
class Dividends < ::EodFacade::Base
|
8
|
+
class << self
|
9
|
+
def call(symbol, params = {})
|
10
|
+
unless Cache::RedisCache.get(redis_key(symbol, params[:from], params[:to]))
|
11
|
+
response = make_request(url_path(symbol), params.merge(fmt: 'json'))
|
12
|
+
|
13
|
+
unless response.success?
|
14
|
+
raise ArgumentError, "Error fetching dividend data for #{symbol}"
|
15
|
+
end
|
16
|
+
|
17
|
+
Cache::RedisCache.set(
|
18
|
+
redis_key(symbol, params[:from], params[:to]),
|
19
|
+
response.parsed_response.to_json
|
20
|
+
)
|
21
|
+
end
|
22
|
+
|
23
|
+
Oj.load(Cache::RedisCache.get(redis_key(symbol, params[:from], params[:to])))
|
24
|
+
end
|
25
|
+
|
26
|
+
private
|
27
|
+
|
28
|
+
def url_path(symbol)
|
29
|
+
"/div/#{symbol}"
|
30
|
+
end
|
31
|
+
|
32
|
+
def redis_key(symbol, from, to)
|
33
|
+
"#{symbol}_#{from || ''}_#{to || ''}_dividend"
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
data/sensei_eod_utils.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sensei_eod_utils
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.50
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nishant Shah
|
@@ -80,6 +80,7 @@ files:
|
|
80
80
|
- lib/cache/redis_cache.rb
|
81
81
|
- lib/eod_facade/base.rb
|
82
82
|
- lib/eod_facade/constants.rb
|
83
|
+
- lib/eod_facade/dividends.rb
|
83
84
|
- lib/eod_facade/eod.rb
|
84
85
|
- lib/eod_facade/fundamentals.rb
|
85
86
|
- lib/eod_facade/options.rb
|