Module: Linzer::Message::Wrapper

Defined in:
lib/linzer/message/wrapper.rb

Class Method Summary collapse

Class Method Details

.register_adapter(operation_class, adapter_class) ⇒ Object



25
26
27
# File 'lib/linzer/message/wrapper.rb', line 25

def register_adapter(operation_class, adapter_class)
  adapters[operation_class] = adapter_class
end

.wrap(operation, **options) ⇒ Object



14
15
16
17
18
19
20
21
22
23
# File 'lib/linzer/message/wrapper.rb', line 14

def wrap(operation, **options)
  adapter_class = adapters[operation.class]

  if !adapter_class
    ancestor = find_ancestor(operation)
    fail_with_unsupported(operation) unless ancestor
  end

  (adapter_class || ancestor).new(operation, **options)
end