evt-messaging 2.5.5.2 → 2.5.6.0
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/lib/messaging/controls/metadata.rb +9 -3
- data/lib/messaging/message/metadata.rb +48 -5
- data/lib/messaging/message/transform.rb +3 -1
- 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: 4ed32a3950086fa459ebb29d4343df38845f3ce1d4a559205bb5fcd6d8c42c40
|
4
|
+
data.tar.gz: 6187c2a9da83c38d5f003259a1ecf59b96fcf88aaaa16ca3b5ec03723a6ff806
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 56c25adccd43baa313b05d76aa3b2e8f82977be4e898c0680ae38ba479e009d88a31caa4deb50adc59fc3ebce58dc74e46f87dee6a44f8bfd2facb3bedb0c94a
|
7
|
+
data.tar.gz: 6e375228008283d4bc40f7495658223ca789afabc6c99d86805bee419c6b42dbfd06850e3ddc771a30f7c5ff46289ae2485d3e14fa2c5076a4c5cd4057434344
|
@@ -49,10 +49,16 @@ module Messaging
|
|
49
49
|
"#{causation_message_stream_name}/#{causation_message_position}"
|
50
50
|
end
|
51
51
|
|
52
|
+
# def self.properties
|
53
|
+
# {
|
54
|
+
# some_property: 'some property value'
|
55
|
+
# }
|
56
|
+
# end
|
57
|
+
|
52
58
|
def self.properties
|
53
|
-
|
54
|
-
some_property
|
55
|
-
|
59
|
+
[
|
60
|
+
Messaging::Message::Metadata::Property.new(:some_property, 'some property value')
|
61
|
+
]
|
56
62
|
end
|
57
63
|
|
58
64
|
def self.time
|
@@ -33,7 +33,7 @@ module Messaging
|
|
33
33
|
|
34
34
|
attribute :reply_stream_name, String
|
35
35
|
|
36
|
-
attribute :properties,
|
36
|
+
attribute :properties, Array, default: -> { Array.new }
|
37
37
|
|
38
38
|
attribute :time, Time
|
39
39
|
|
@@ -59,6 +59,18 @@ module Messaging
|
|
59
59
|
self.correlation_stream_name = preceding_metadata.correlation_stream_name
|
60
60
|
|
61
61
|
self.reply_stream_name = preceding_metadata.reply_stream_name
|
62
|
+
|
63
|
+
preceding_metadata.properties.each do |property|
|
64
|
+
if property.transient?
|
65
|
+
next
|
66
|
+
end
|
67
|
+
|
68
|
+
set_property(
|
69
|
+
property.name,
|
70
|
+
property.value,
|
71
|
+
transient: property.transient
|
72
|
+
)
|
73
|
+
end
|
62
74
|
end
|
63
75
|
|
64
76
|
def follows?(preceding_metadata)
|
@@ -128,16 +140,47 @@ module Messaging
|
|
128
140
|
end
|
129
141
|
alias :correlates? :correlated?
|
130
142
|
|
131
|
-
|
132
|
-
|
143
|
+
Property = Struct.new(
|
144
|
+
:name,
|
145
|
+
:value,
|
146
|
+
:transient
|
147
|
+
) do
|
148
|
+
def transient?
|
149
|
+
transient == true
|
150
|
+
end
|
151
|
+
end
|
152
|
+
|
153
|
+
def set_property(name, value, transient: nil)
|
154
|
+
transient ||= false
|
155
|
+
|
156
|
+
delete_property(name)
|
157
|
+
|
158
|
+
property = Property.new(name, value, transient)
|
159
|
+
|
160
|
+
properties << property
|
161
|
+
|
162
|
+
property
|
163
|
+
end
|
164
|
+
|
165
|
+
def set_transient_property(name, value, transient: nil)
|
166
|
+
set_property(name, value, transient: true)
|
133
167
|
end
|
134
168
|
|
135
169
|
def get_property(name)
|
136
|
-
properties
|
170
|
+
property = properties.find { |property| property.name == name }
|
171
|
+
property&.value
|
137
172
|
end
|
138
173
|
|
139
174
|
def delete_property(name)
|
140
|
-
properties.
|
175
|
+
i = properties.index { |property| property.name == name }
|
176
|
+
|
177
|
+
return nil if i.nil?
|
178
|
+
|
179
|
+
properties.delete_at(i).value
|
180
|
+
end
|
181
|
+
|
182
|
+
def clear_properties
|
183
|
+
properties.clear
|
141
184
|
end
|
142
185
|
|
143
186
|
def self.source_attribute_names
|
@@ -26,8 +26,10 @@ module Messaging
|
|
26
26
|
|
27
27
|
metadata = message.metadata.to_h
|
28
28
|
|
29
|
+
metadata[:properties].delete_if { |property| property.transient? }
|
30
|
+
|
29
31
|
if metadata[:properties].empty?
|
30
|
-
metadata
|
32
|
+
metadata.delete(:properties)
|
31
33
|
end
|
32
34
|
|
33
35
|
metadata.delete_if { |k, v| v.nil? }
|