Class: Ably::Models::MessageEncoders::Utf8

Inherits:
Base
  • Object
show all
Defined in:
lib/submodules/ably-ruby/lib/ably/models/message_encoders/utf8.rb

Overview

Utf8 Encoder and Decoder Uses encoding identifier 'utf-8' and encodes all JSON objects as UTF-8, and sets the encoding when decoding

Constant Summary collapse

ENCODING_ID =
'utf-8'

Instance Attribute Summary

Attributes inherited from Base

#client, #options

Instance Method Summary collapse

Methods inherited from Base

#add_encoding_to_message, #current_encoding_part, #initialize, #is_empty?, #strip_current_encoding_part

Constructor Details

This class inherits a constructor from Ably::Models::MessageEncoders::Base

Instance Method Details

#decode(message, channel_options) ⇒ Object



14
15
16
17
18
19
# File 'lib/submodules/ably-ruby/lib/ably/models/message_encoders/utf8.rb', line 14

def decode(message, channel_options)
  if is_utf8_encoded?(message)
    message[:data] = message[:data].force_encoding(Encoding::UTF_8)
    strip_current_encoding_part message
  end
end

#encode(message, channel_options) ⇒ Object



10
11
12
# File 'lib/submodules/ably-ruby/lib/ably/models/message_encoders/utf8.rb', line 10

def encode(message, channel_options)
  # no encoding of UTF-8 required
end