Class: Temporal::PayloadConverter::JSON

Inherits:
EncodingBase show all
Defined in:
lib/temporal/payload_converter/json.rb

Constant Summary collapse

ENCODING =
'json/plain'.freeze

Instance Method Summary collapse

Instance Method Details

#encodingObject



9
10
11
# File 'lib/temporal/payload_converter/json.rb', line 9

def encoding
  ENCODING
end

#from_payload(payload) ⇒ Object



13
14
15
# File 'lib/temporal/payload_converter/json.rb', line 13

def from_payload(payload)
  ::JSON.parse(payload.data, create_additions: true)
end

#to_payload(data) ⇒ Object



17
18
19
20
21
22
# File 'lib/temporal/payload_converter/json.rb', line 17

def to_payload(data)
  Temporal::Api::Common::V1::Payload.new(
    metadata: { 'encoding' => ENCODING },
    data: ::JSON.generate(data).b,
  )
end