Class: ActiveRecord::Encryption::MessageSerializer
Relationships & Source Files | |
Inherits: | Object |
Defined in: | activerecord/lib/active_record/encryption/message_serializer.rb |
Overview
A message serializer that serializes Messages
with JSON.
The generated structure is pretty simple:
{
p: <payload>,
h: {
header1: value1,
header2: value2,
#...
}
}
Both the payload and the header values are encoded with Base64 to prevent JSON parsing errors and encoding issues when storing the resulting serialized data.
Instance Method Summary
Instance Method Details
#dump(message)
# File 'activerecord/lib/active_record/encryption/message_serializer.rb', line 31
def dump( ) raise ActiveRecord::Encryption::Errors::ForbiddenClass unless .is_a?(ActiveRecord::Encryption::Message) JSON.dump ( ) end
#load(serialized_content)
[ GitHub ]# File 'activerecord/lib/active_record/encryption/message_serializer.rb', line 24
def load(serialized_content) data = JSON.parse(serialized_content) (data, 1) rescue JSON::ParserError raise ActiveRecord::Encryption::Errors::Encoding end