class Temporal::Client::Converter::Composite
Attributes
payload_converters[R]
payload_converters_by_encoding[R]
Public Class Methods
new(payload_converters:)
click to toggle source
# File lib/temporal/client/converter/composite.rb, line 10 def initialize(payload_converters:) @payload_converters = payload_converters @payload_converters_by_encoding = {} @payload_converters.each do |converter| @payload_converters_by_encoding[converter.encoding] = converter end end
Public Instance Methods
from_payload(payload)
click to toggle source
# File lib/temporal/client/converter/composite.rb, line 19 def from_payload(payload) encoding = payload.metadata['encoding'] if encoding.nil? raise MetadataNotSet end converter = payload_converters_by_encoding[encoding] if converter.nil? raise ConverterNotFound end converter.from_payload(payload) end
to_payload(data)
click to toggle source
# File lib/temporal/client/converter/composite.rb, line 34 def to_payload(data) payload_converters.each do |converter| payload = converter.to_payload(data) return payload unless payload.nil? end raise ConverterNotFound end