Class: Sumac::Message::Exchange::InitializationNotification

Inherits:
Notification show all
Defined in:
lib/sumac/message/exchange/initialization_notification.rb

Instance Method Summary collapse

Methods inherited from Base

from_json_structure

Methods inherited from Sumac::Message::Exchange

from_json_structure

Methods inherited from Sumac::Message

from_json, #to_json

Constructor Details

#initialize(connection) ⇒ InitializationNotification

Returns a new instance of InitializationNotification.



6
7
8
9
# File 'lib/sumac/message/exchange/initialization_notification.rb', line 6

def initialize(connection)
  super
  @entry = nil
end

Instance Method Details

#entryObject

Raises:



28
29
30
31
# File 'lib/sumac/message/exchange/initialization_notification.rb', line 28

def entry
  raise MessageError unless setup?
  @entry.to_native_object
end

#entry=(new_entry_object) ⇒ Object



33
34
35
# File 'lib/sumac/message/exchange/initialization_notification.rb', line 33

def entry=(new_entry_object)
  @entry = Object.from_native_object(@connection, new_entry_object)
end

#invert_orginObject

Raises:



37
38
39
40
41
# File 'lib/sumac/message/exchange/initialization_notification.rb', line 37

def invert_orgin
  raise MessageError unless setup?
  @entry.invert_orgin if @entry.respond_to?(:invert_orgin)
  nil
end

#parse_json_structure(json_structure) ⇒ Object

Raises:



11
12
13
14
15
16
17
# File 'lib/sumac/message/exchange/initialization_notification.rb', line 11

def parse_json_structure(json_structure)
  raise MessageError unless json_structure.is_a?(Hash) &&
    json_structure['message_type'] == 'exchange' &&
    json_structure['exchange_type'] == 'initialization_notification'
  @entry = Object.from_json_structure(@connection, json_structure['entry'])
  nil
end

#to_json_structureObject

Raises:



19
20
21
22
23
24
25
26
# File 'lib/sumac/message/exchange/initialization_notification.rb', line 19

def to_json_structure
  raise MessageError unless setup?
  {
    'message_type' => 'exchange',
    'exchange_type' => 'initialization_notification',
    'entry' => @entry.to_json_structure
  }
end