Class: Messaging::Message::Metadata
- Inherits:
-
Object
- Object
- Messaging::Message::Metadata
- Includes:
- Schema::DataStructure
- Defined in:
- lib/messaging/message/metadata.rb
Defined Under Namespace
Classes: Error
Class Method Summary collapse
Instance Method Summary collapse
- #causation_message_identifier ⇒ Object (also: #causation_identifier)
- #clear_reply_stream_name ⇒ Object
- #correlated?(stream_name) ⇒ Boolean (also: #correlates?)
- #follow(preceding_metadata) ⇒ Object
- #follows?(metadata) ⇒ Boolean
- #identifier ⇒ Object (also: #source_message_identifier)
- #reply? ⇒ Boolean
Class Method Details
.transient_attributes ⇒ Object
88 89 90 91 92 93 94 95 |
# File 'lib/messaging/message/metadata.rb', line 88 def self.transient_attributes [ :stream_name, :position, :global_position, :time ] end |
Instance Method Details
#causation_message_identifier ⇒ Object Also known as: causation_identifier
42 43 44 45 |
# File 'lib/messaging/message/metadata.rb', line 42 def return nil if .nil? || .nil? "#{causation_message_stream_name}/#{causation_message_position}" end |
#clear_reply_stream_name ⇒ Object
65 66 67 |
# File 'lib/messaging/message/metadata.rb', line 65 def clear_reply_stream_name self.reply_stream_name = nil end |
#correlated?(stream_name) ⇒ Boolean Also known as: correlates?
73 74 75 76 77 78 79 80 81 82 83 84 85 |
# File 'lib/messaging/message/metadata.rb', line 73 def (stream_name) correlation_stream_name = self.correlation_stream_name return false if correlation_stream_name.nil? stream_name = Category.normalize(stream_name) if MessageStore::StreamName.category?(stream_name) correlation_stream_name = MessageStore::StreamName.get_category(correlation_stream_name) end correlation_stream_name == stream_name end |
#follow(preceding_metadata) ⇒ Object
48 49 50 51 52 53 54 55 56 |
# File 'lib/messaging/message/metadata.rb', line 48 def follow() self. = .stream_name self. = .position self. = .global_position self.correlation_stream_name = .correlation_stream_name self.reply_stream_name = .reply_stream_name end |
#follows?(metadata) ⇒ Boolean
58 59 60 61 62 63 |
# File 'lib/messaging/message/metadata.rb', line 58 def follows?() == .stream_name && == .position && == .global_position && reply_stream_name == .reply_stream_name end |
#identifier ⇒ Object Also known as: source_message_identifier
36 37 38 39 |
# File 'lib/messaging/message/metadata.rb', line 36 def identifier return nil if stream_name.nil? || position.nil? "#{stream_name}/#{position}" end |
#reply? ⇒ Boolean
69 70 71 |
# File 'lib/messaging/message/metadata.rb', line 69 def reply? !reply_stream_name.nil? end |