Class: Karafka::Parsers::Json
- Inherits:
-
Object
- Object
- Karafka::Parsers::Json
- Defined in:
- lib/karafka/parsers/json.rb
Overview
Default Karafka Json parser for serializing and deserializing data
Class Method Summary collapse
-
.generate(content) ⇒ String
Valid JSON string containing serialized data.
-
.parse(content) ⇒ Hash
Hash with parsed JSON data.
Class Method Details
.generate(content) ⇒ String
Note:
When string is passed to this method, we assume that it is already a json string and we don’t serialize it again. This allows us to serialize data before it is being forwarded to a parser if we want to have a custom (not that simple) json serialization
Returns Valid JSON string containing serialized data.
31 32 33 34 35 |
# File 'lib/karafka/parsers/json.rb', line 31 def self.generate(content) return content if content.is_a?(String) return content.to_json if content.respond_to?(:to_json) raise Karafka::Errors::ParserError, content end |
.parse(content) ⇒ Hash
Returns hash with parsed JSON data.
12 13 14 15 16 |
# File 'lib/karafka/parsers/json.rb', line 12 def self.parse(content) ::MultiJson.load(content) rescue ::MultiJson::ParseError => e raise ::Karafka::Errors::ParserError, e end |