istox 0.2.4 → 0.2.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +33 -22
- data/lib/istox/helpers/messaging.rb +8 -4
- data/lib/istox/helpers/sns_publisher.rb +7 -3
- data/lib/istox/quant/bond.rb +2 -2
- data/lib/istox/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ccf4e9eef0dc952b34d1c76c533d9345b6e475671049be6020278d47bcd67f09
|
|
4
|
+
data.tar.gz: 654ca1f3a138268f2942588962315357ad80de06613c09b0eacfa77834558711
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1b5b7894925dcd7f9ebc8bc6d8e9c707a4888df5691754dcc4820ddc773f050ee024842ab6a72dd5143f7681203a75f80c63918b304d6f0c6cba4fe4e0b372e4
|
|
7
|
+
data.tar.gz: 0e2a37b36caed13f534c4455ed0a4b9525ab10248a083ff72c13c0c744ebe5f9d2b64c2c58f2a098a1449d9747ba65bd0cdca27a00213c5863953b357ecf5821
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
istox (0.
|
|
4
|
+
istox (0.2.3.pre.1)
|
|
5
5
|
amazing_print
|
|
6
6
|
awesome_print
|
|
7
7
|
aws-sdk-sns (~> 1)
|
|
@@ -64,10 +64,10 @@ GEM
|
|
|
64
64
|
i18n (>= 0.7, < 2)
|
|
65
65
|
minitest (~> 5.1)
|
|
66
66
|
tzinfo (~> 1.1)
|
|
67
|
-
amazing_print (1.
|
|
67
|
+
amazing_print (1.3.0)
|
|
68
68
|
amq-protocol (2.3.2)
|
|
69
69
|
arel (9.0.0)
|
|
70
|
-
awesome_print (1.
|
|
70
|
+
awesome_print (1.9.2)
|
|
71
71
|
aws-eventstream (1.1.0)
|
|
72
72
|
aws-partitions (1.318.0)
|
|
73
73
|
aws-sdk-core (3.96.1)
|
|
@@ -86,7 +86,7 @@ GEM
|
|
|
86
86
|
aws-xray-sdk (0.11.4)
|
|
87
87
|
aws-sdk-xray (~> 1.4.0)
|
|
88
88
|
multi_json (~> 1)
|
|
89
|
-
binding_of_caller (0.
|
|
89
|
+
binding_of_caller (1.0.0)
|
|
90
90
|
debug_inspector (>= 0.0.1)
|
|
91
91
|
builder (3.2.4)
|
|
92
92
|
bullet (5.7.6)
|
|
@@ -99,8 +99,9 @@ GEM
|
|
|
99
99
|
concurrent-ruby (1.1.6)
|
|
100
100
|
crass (1.0.6)
|
|
101
101
|
database_cleaner (1.6.2)
|
|
102
|
-
debug_inspector (
|
|
102
|
+
debug_inspector (1.1.0)
|
|
103
103
|
diff-lcs (1.3)
|
|
104
|
+
e2mmap (0.1.0)
|
|
104
105
|
erubi (1.9.0)
|
|
105
106
|
exponential-backoff (0.0.4)
|
|
106
107
|
factory_bot (4.8.2)
|
|
@@ -112,34 +113,40 @@ GEM
|
|
|
112
113
|
i18n (~> 0.5)
|
|
113
114
|
fakeredis (0.7.0)
|
|
114
115
|
redis (>= 3.2, < 5.0)
|
|
115
|
-
faraday (1.0
|
|
116
|
+
faraday (1.3.0)
|
|
117
|
+
faraday-net_http (~> 1.0)
|
|
116
118
|
multipart-post (>= 1.2, < 3)
|
|
119
|
+
ruby2_keywords
|
|
120
|
+
faraday-net_http (1.0.1)
|
|
117
121
|
faraday_middleware (1.0.0)
|
|
118
122
|
faraday (~> 1.0)
|
|
119
|
-
ffi (1.
|
|
123
|
+
ffi (1.15.0)
|
|
120
124
|
globalid (0.4.2)
|
|
121
125
|
activesupport (>= 4.2.0)
|
|
122
|
-
google-protobuf (3.
|
|
123
|
-
googleapis-common-protos-types (1.0.
|
|
124
|
-
google-protobuf (~> 3.
|
|
125
|
-
graphlient (0.
|
|
126
|
+
google-protobuf (3.15.6-universal-darwin)
|
|
127
|
+
googleapis-common-protos-types (1.0.6)
|
|
128
|
+
google-protobuf (~> 3.14)
|
|
129
|
+
graphlient (0.5.0)
|
|
126
130
|
faraday (>= 1.0)
|
|
127
131
|
faraday_middleware
|
|
128
132
|
graphql-client
|
|
129
|
-
graphql (1.
|
|
133
|
+
graphql (1.12.6)
|
|
130
134
|
graphql-client (0.16.0)
|
|
131
135
|
activesupport (>= 3.0)
|
|
132
136
|
graphql (~> 1.8)
|
|
133
|
-
grpc (1.
|
|
134
|
-
google-protobuf (~> 3.
|
|
137
|
+
grpc (1.36.0-universal-darwin)
|
|
138
|
+
google-protobuf (~> 3.14)
|
|
135
139
|
googleapis-common-protos-types (~> 1.0)
|
|
136
|
-
grpc-tools (1.
|
|
137
|
-
gruf (2.
|
|
140
|
+
grpc-tools (1.36.0)
|
|
141
|
+
gruf (2.9.1)
|
|
138
142
|
activesupport (> 4)
|
|
139
143
|
concurrent-ruby (> 1)
|
|
144
|
+
e2mmap (~> 0.1)
|
|
140
145
|
grpc (~> 1.10)
|
|
141
146
|
grpc-tools (~> 1.10)
|
|
147
|
+
json (>= 2.3)
|
|
142
148
|
slop (~> 4.6)
|
|
149
|
+
thwait (~> 0.1)
|
|
143
150
|
hashie (3.5.7)
|
|
144
151
|
i18n (0.9.5)
|
|
145
152
|
concurrent-ruby (~> 1.0)
|
|
@@ -150,6 +157,7 @@ GEM
|
|
|
150
157
|
grpc-tools (~> 1.10)
|
|
151
158
|
slop (~> 4.6)
|
|
152
159
|
jmespath (1.4.0)
|
|
160
|
+
json (2.5.1)
|
|
153
161
|
listen (3.0.8)
|
|
154
162
|
rb-fsevent (~> 0.9, >= 0.9.4)
|
|
155
163
|
rb-inotify (~> 0.9, >= 0.9.7)
|
|
@@ -170,11 +178,11 @@ GEM
|
|
|
170
178
|
nio4r (2.3.1)
|
|
171
179
|
nokogiri (1.10.9)
|
|
172
180
|
mini_portile2 (~> 2.4.0)
|
|
173
|
-
oj (3.
|
|
174
|
-
ougai (
|
|
181
|
+
oj (3.11.3)
|
|
182
|
+
ougai (2.0.0)
|
|
175
183
|
oj (~> 3.10)
|
|
176
|
-
paranoia (2.4.
|
|
177
|
-
activerecord (>= 4.0, < 6.
|
|
184
|
+
paranoia (2.4.3)
|
|
185
|
+
activerecord (>= 4.0, < 6.2)
|
|
178
186
|
pry (0.12.2)
|
|
179
187
|
coderay (~> 1.1.0)
|
|
180
188
|
method_source (~> 0.9.0)
|
|
@@ -222,7 +230,7 @@ GEM
|
|
|
222
230
|
redis-activesupport (5.2.0)
|
|
223
231
|
activesupport (>= 3, < 7)
|
|
224
232
|
redis-store (>= 1.3, < 2)
|
|
225
|
-
redis-namespace (1.8.
|
|
233
|
+
redis-namespace (1.8.1)
|
|
226
234
|
redis (>= 3.0.4)
|
|
227
235
|
redis-rack (2.1.3)
|
|
228
236
|
rack (>= 2.0.8, < 3)
|
|
@@ -254,6 +262,7 @@ GEM
|
|
|
254
262
|
rspec-mocks (~> 3.8.0)
|
|
255
263
|
rspec-support (~> 3.8.0)
|
|
256
264
|
rspec-support (3.8.0)
|
|
265
|
+
ruby2_keywords (0.0.4)
|
|
257
266
|
slop (4.8.2)
|
|
258
267
|
sprockets (3.7.2)
|
|
259
268
|
concurrent-ruby (~> 1.0)
|
|
@@ -265,11 +274,13 @@ GEM
|
|
|
265
274
|
sqlite3 (1.3.13)
|
|
266
275
|
thor (0.20.3)
|
|
267
276
|
thread_safe (0.3.6)
|
|
277
|
+
thwait (0.2.0)
|
|
278
|
+
e2mmap
|
|
268
279
|
timecop (0.9.1)
|
|
269
280
|
tzinfo (1.2.6)
|
|
270
281
|
thread_safe (~> 0.1)
|
|
271
282
|
uniform_notifier (1.11.0)
|
|
272
|
-
vault (0.
|
|
283
|
+
vault (0.16.0)
|
|
273
284
|
aws-sigv4
|
|
274
285
|
websocket-driver (0.7.0)
|
|
275
286
|
websocket-extensions (>= 0.1.0)
|
|
@@ -23,7 +23,7 @@ module Istox
|
|
|
23
23
|
type: 'SEND_SMS',
|
|
24
24
|
data: {
|
|
25
25
|
to: targets,
|
|
26
|
-
subject: subject || 'Message from
|
|
26
|
+
subject: subject || 'Message from ADDX',
|
|
27
27
|
body: content
|
|
28
28
|
}
|
|
29
29
|
}
|
|
@@ -93,6 +93,7 @@ module Istox
|
|
|
93
93
|
# sample template data, it should be an array
|
|
94
94
|
# [{
|
|
95
95
|
# email: email,
|
|
96
|
+
# sid: xxxxx,
|
|
96
97
|
# istoxP1: auth.first_name,
|
|
97
98
|
# <more other sample template attributes>: <other sample template data>,
|
|
98
99
|
# }]
|
|
@@ -129,7 +130,8 @@ module Istox
|
|
|
129
130
|
email_data[:copy_emails].each do |ce|
|
|
130
131
|
next unless ce.present?
|
|
131
132
|
|
|
132
|
-
|
|
133
|
+
# uid and sid are reserved fields that should be not cloned
|
|
134
|
+
copy_email_data = email_data.clone.except(:sid).except(:uid)
|
|
133
135
|
|
|
134
136
|
# if it is just email to cc
|
|
135
137
|
if ce.is_a? String
|
|
@@ -137,7 +139,8 @@ module Istox
|
|
|
137
139
|
else
|
|
138
140
|
# if it is a object hash
|
|
139
141
|
# {
|
|
140
|
-
# email: xxxx
|
|
142
|
+
# email: xxxx,
|
|
143
|
+
# sid: xxxx,
|
|
141
144
|
# params: {
|
|
142
145
|
# istoxP1: xxxx,
|
|
143
146
|
# istoxP2: xxxx
|
|
@@ -146,7 +149,8 @@ module Istox
|
|
|
146
149
|
next unless ce[:email].present?
|
|
147
150
|
|
|
148
151
|
copy_email_data[:email] = ce[:email]
|
|
149
|
-
copy_email_data =
|
|
152
|
+
copy_email_data[:sid] = ce[:sid]
|
|
153
|
+
copy_email_data = copy_email_data.merge(ce[:params]) if ce[:params].present?
|
|
150
154
|
end
|
|
151
155
|
|
|
152
156
|
copy_email_data.delete(:copy_emails)
|
|
@@ -14,12 +14,16 @@ module Istox
|
|
|
14
14
|
|
|
15
15
|
message = JSON.generate(message) unless message.is_a? String
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
topic = topic_arn || ENV.fetch('SNS_CLIENT_TOPIC', '')
|
|
18
|
+
|
|
19
|
+
log.info("Publishing SNS to topic: #{topic} with message: #{message}")
|
|
20
|
+
|
|
21
|
+
sns_client.publish(topic_arn: topic, message: message)
|
|
18
22
|
|
|
19
23
|
log.info('Publish to SNS successfully.')
|
|
20
24
|
rescue StandardError => e
|
|
21
|
-
log.
|
|
22
|
-
log.
|
|
25
|
+
log.info 'Unable to publish SNS message.'
|
|
26
|
+
log.info(e)
|
|
23
27
|
log.info('Failed to publish SNS, ignoring...') unless throw_exception
|
|
24
28
|
|
|
25
29
|
raise e if throw_exception
|
data/lib/istox/quant/bond.rb
CHANGED
|
@@ -190,7 +190,7 @@ module Istox
|
|
|
190
190
|
if @pay_accrued_interest
|
|
191
191
|
# accrued interest + face value discounted to the current date
|
|
192
192
|
discounted_accrued_interest = 0
|
|
193
|
-
if ex_coupon_date.nil? ||
|
|
193
|
+
if ex_coupon_date.nil? || date < ex_coupon_date
|
|
194
194
|
discounted_accrued_interest = @coupon*@face_value*accrued_interest_factor*discount_factor
|
|
195
195
|
end
|
|
196
196
|
discounted_face_value = @face_value*discount_factor
|
|
@@ -198,7 +198,7 @@ module Istox
|
|
|
198
198
|
return price
|
|
199
199
|
else
|
|
200
200
|
discounted_last_coupon = 0
|
|
201
|
-
if ex_coupon_date.nil? ||
|
|
201
|
+
if ex_coupon_date.nil? || date < ex_coupon_date
|
|
202
202
|
discounted_last_coupon = @coupon*@face_value/@coupon_frequency*discount_factor
|
|
203
203
|
end
|
|
204
204
|
discounted_face_value = @face_value*discount_factor
|
data/lib/istox/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: istox
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.5.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Siong Leng
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2021-04
|
|
11
|
+
date: 2021-05-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: amazing_print
|