rmessage 0.1.4 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rmessage/message.rb +9 -9
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 79600cc96aeee7a3ab6fc3f3f70e0993846069948749a7357042883b500ab6d1
|
4
|
+
data.tar.gz: 95d2eb5e92f60a90b3d9f2a476f09c47ab169f011a975a02b01239abc5ec313a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 84fbd03fdc2203f20e0c8ac2f076e20db5434c606ce6d7e0c4260d1917ffa40e9036a0a3b77ed08cb1cad0af513cd722689129b6b4e62a30566fcc0cc76a7cf8
|
7
|
+
data.tar.gz: a8c91c22cdc8c12c5537aaf7e2afb0addd282fa5c67af4db68b3354bcac13bb5c304eb2bfa36d88ab86e5d9ebb8b08b5643d86eee5a1905011eff9a2b83dd145
|
data/lib/rmessage/message.rb
CHANGED
@@ -15,14 +15,14 @@ module RMessage
|
|
15
15
|
attr :payload
|
16
16
|
|
17
17
|
# Constructs a new Message
|
18
|
-
# @param opts [Hash] message options
|
19
|
-
# *
|
18
|
+
# @param opts [Hash, String] message options
|
19
|
+
# * type [Symbol, String] the Message label
|
20
20
|
# * signature [Integer, String] the Message signature
|
21
21
|
# * payload [Hash, String] the Message data
|
22
22
|
def initialize(opts = {})
|
23
23
|
@type = opts[:type] || :UNTITLED
|
24
24
|
@signature = opts[:signature] || Druuid.gen
|
25
|
-
|
25
|
+
read(opts)
|
26
26
|
end
|
27
27
|
|
28
28
|
# Read and parse data. Defaults to the Message#payload.
|
@@ -31,14 +31,14 @@ module RMessage
|
|
31
31
|
def read(data = @payload)
|
32
32
|
case data
|
33
33
|
when Hash
|
34
|
-
@type
|
35
|
-
@signature
|
36
|
-
@payload ||= data[:payload]
|
34
|
+
@type = data[:type]
|
35
|
+
@signature = data[:signature]
|
36
|
+
@payload ||= data[:payload] || data
|
37
37
|
when String
|
38
38
|
parsed = Oj.load(data)
|
39
|
-
@type
|
40
|
-
@signature
|
41
|
-
@payload ||= parsed['payload']
|
39
|
+
@type = parsed['type']
|
40
|
+
@signature = parsed['signature']
|
41
|
+
@payload ||= parsed['payload'] || parsed
|
42
42
|
else raise TypeError, 'Invalid type for Message#payload'
|
43
43
|
end
|
44
44
|
self
|