zuora_connect 1.4.49 → 1.4.50
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models/zuora_connect/app_instance_base.rb +29 -10
- data/lib/zuora_connect/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bb0ebbbcb7ba2dbc79a33200d9aadbbee60d5ef1
|
4
|
+
data.tar.gz: 9fc27d36749c38f4eda24712354cdd1ce7cc11f4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 780067138f1eb2c0df6f70c031e66b51cb6048a28bf7c57961d13c3f771ded552f30747457b19c2fdd59cfb8d8d198bdffb78edb08d7e1131e16c47148cc37fc
|
7
|
+
data.tar.gz: 7c29c04bc5265fd3853b6b8b0fc15ea8e25b3cfd3d2867a553b749bd832d251fec9e02dc8119661053231ff102ec3d709f40642a47b79292899f4d80e5ebb2a0
|
@@ -24,7 +24,7 @@ module ZuoraConnect
|
|
24
24
|
PaperTrail.whodunnit = session["#{self.id}::user::email"].present? ? session["#{self.id}::user::email"] : nil if session.present?
|
25
25
|
end
|
26
26
|
if defined?(Redis.current)
|
27
|
-
return Redis.current.get("AppInstance:#{self.id}").blank? ? {} : decrypt_data(Redis.current.get("AppInstance:#{self.id}"))
|
27
|
+
return Redis.current.get("AppInstance:#{self.id}").blank? ? {} : decrypt_data(data: Redis.current.get("AppInstance:#{self.id}"), rescue_return: {})
|
28
28
|
else
|
29
29
|
return session
|
30
30
|
end
|
@@ -32,20 +32,39 @@ module ZuoraConnect
|
|
32
32
|
|
33
33
|
def cache_app_instance
|
34
34
|
if defined?(Redis.current)
|
35
|
-
Redis.current.set("AppInstance:#{self.id}", encrypt_data(self.save_data))
|
35
|
+
Redis.current.set("AppInstance:#{self.id}", encrypt_data(data: self.save_data))
|
36
36
|
Redis.current.expire("AppInstance:#{self.id}", 60.minutes.to_i)
|
37
37
|
Redis.current.del("Deleted:#{self.id}")
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
41
|
-
def decrypt_data(data)
|
41
|
+
def decrypt_data(data: nil, rescue_return: nil)
|
42
42
|
return data if data.blank?
|
43
|
-
|
43
|
+
begin
|
44
|
+
if Rails.env == 'development'
|
45
|
+
return JSON.parse(data)
|
46
|
+
else
|
47
|
+
begin
|
48
|
+
return JSON.parse(encryptor.decrypt_and_verify(CGI::unescape(data)))
|
49
|
+
rescue ActiveSupport::MessageVerifier::InvalidSignature => ex
|
50
|
+
Rails.logger.fatal('Error Decrypting')
|
51
|
+
return rescue_return
|
52
|
+
end
|
53
|
+
end
|
54
|
+
rescue JSON::ParserError => ex
|
55
|
+
Rails.logger.fatal('Error Parsing')
|
56
|
+
return rescue_return
|
57
|
+
end
|
44
58
|
end
|
45
59
|
|
46
|
-
def encrypt_data(data)
|
60
|
+
def encrypt_data(data: nil)
|
47
61
|
return data if data.blank?
|
48
|
-
|
62
|
+
|
63
|
+
if Rails.env == 'development'
|
64
|
+
return data.to_json
|
65
|
+
else
|
66
|
+
return encryptor.encrypt_and_sign(data.to_json)
|
67
|
+
end
|
49
68
|
end
|
50
69
|
|
51
70
|
def encryptor
|
@@ -74,8 +93,8 @@ module ZuoraConnect
|
|
74
93
|
end
|
75
94
|
|
76
95
|
if defined?(Redis.current) && object_id.present? && object_id.class == String
|
77
|
-
stub_catalog = decrypt_data(Redis.current.get("Catalog:#{self.id}:#{object_id}:Children:#{child_objects}"))
|
78
|
-
object_hierarchy = decrypt_data(Redis.current.get("Catalog:#{self.id}:#{object_id}:Hierarchy"))
|
96
|
+
stub_catalog = decrypt_data(data: Redis.current.get("Catalog:#{self.id}:#{object_id}:Children:#{child_objects}"))
|
97
|
+
object_hierarchy = decrypt_data(data: Redis.current.get("Catalog:#{self.id}:#{object_id}:Hierarchy"))
|
79
98
|
end
|
80
99
|
|
81
100
|
if defined?(object_hierarchy)
|
@@ -192,8 +211,8 @@ module ZuoraConnect
|
|
192
211
|
stub_catalog ||= JSON.parse(ActiveRecord::Base.connection.execute(string).first["item"] || "{}")
|
193
212
|
|
194
213
|
if defined?(Redis.current) && object_id.present? && object_id.class == String
|
195
|
-
Redis.current.set("Catalog:#{self.id}:#{object_id}:Hierarchy", encrypt_data(object_hierarchy))
|
196
|
-
Redis.current.set("Catalog:#{self.id}:#{object_id}:Children:#{child_objects}", encrypt_data(stub_catalog)) if cache
|
214
|
+
Redis.current.set("Catalog:#{self.id}:#{object_id}:Hierarchy", encrypt_data(data: object_hierarchy))
|
215
|
+
Redis.current.set("Catalog:#{self.id}:#{object_id}:Children:#{child_objects}", encrypt_data(data: stub_catalog)) if cache
|
197
216
|
end
|
198
217
|
|
199
218
|
return stub_catalog
|