LogDB.Client.Parser.Json (logdb_client v0.3.0)

Copy Markdown View Source

Summary

Functions

Callback implementation for LogDB.Client.Parser.decode/1.

WS/HTTP (:json): шина уже разобрала JSON — значение как есть, строка остаётся строкой; бинарь пришёл base64 — раскодировать (JSON — разобрать). erlangd (:bytes): по объявленному типу — JSON разобрать, остальное (текст, терм, байты) отдать как есть. Тип не объявлен (старые события) — JSON, если разбирается, иначе байты.

Callback implementation for LogDB.Client.Parser.encode/1.

Functions

decode(payload)

Callback implementation for LogDB.Client.Parser.decode/1.

decode_event(payload, meta, arg3)

WS/HTTP (:json): шина уже разобрала JSON — значение как есть, строка остаётся строкой; бинарь пришёл base64 — раскодировать (JSON — разобрать). erlangd (:bytes): по объявленному типу — JSON разобрать, остальное (текст, терм, байты) отдать как есть. Тип не объявлен (старые события) — JSON, если разбирается, иначе байты.

Раньше раскодировался заново и уже разобранный payload: строка "hello" уходила в handle_error и переотправлялась бесконечно, а строка "{"a":1}" молча становилась map.

decode_strict(payload)

Callback implementation for LogDB.Client.Parser.decode_strict/1.

encode(payload)

Callback implementation for LogDB.Client.Parser.encode/1.

encode_bytes(term)

Callback implementation for LogDB.Client.Parser.encode_bytes/1.