From f6484eccaaa681fec46bfbe9521c5822f27b3c62 Mon Sep 17 00:00:00 2001 From: Mickael Bosch Date: Wed, 1 Apr 2026 12:32:47 +0200 Subject: [PATCH] use LOG_INF --- README.md | 8 ++++++++ include/json.hpp | 8 +++----- src/json.cpp | 29 ++++++++++++++++------------- 3 files changed, 27 insertions(+), 18 deletions(-) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..c504da0 --- /dev/null +++ b/README.md @@ -0,0 +1,8 @@ +# Json c++ + +Wrap the Zephyr Json module to ease its usage for C++ development. + +## Usage + +- Include `zephyr_module.cmake` in the cmake file (eg. `include(${CMAKE_CURRENT_LIST_DIR}/zephyr_json_cpp/zephyr_module.cmake)`) +- Add `CONFIG_JSON_LIBRARY=y` to `prj.conf` diff --git a/include/json.hpp b/include/json.hpp index 04a025f..f598709 100644 --- a/include/json.hpp +++ b/include/json.hpp @@ -6,12 +6,10 @@ #include -#include - namespace JsonParser { void init(); -void add_text(uint8_t* buf, size_t size); +void add_text(const uint8_t* buf, size_t size); int json_printer(const char* bytes, size_t len, void* data); class HandlerBase @@ -63,9 +61,9 @@ public: return false; } - // info("received a valid json\n"); + // LOG_INF"received a valid json\n"); // print(s); - // info("\n"); + // LOG_INF"\n"); return true; } }; diff --git a/src/json.cpp b/src/json.cpp index c497a29..787f0d9 100644 --- a/src/json.cpp +++ b/src/json.cpp @@ -1,6 +1,9 @@ #include +#include -static constexpr size_t BUF_SIZE = 64 + 1; +LOG_MODULE_REGISTER(json); + +static constexpr size_t BUF_SIZE = 512; char _buf[BUF_SIZE]; size_t _idx; size_t _indent; @@ -15,10 +18,10 @@ JsonParser::HandlerBase::HandlerBase() int JsonParser::json_printer(const char* bytes, size_t len, void* data) { - // info("[[%d]]\n", len); + // LOG_INF("[[%d]]", len); // for (size_t i = 0; i < len; i++) // { - // info("%c", bytes[i]); + // LOG_INF("%c", bytes[i]); // } // return 0; @@ -29,13 +32,13 @@ int JsonParser::json_printer(const char* bytes, size_t len, void* data) { nl = false; _indent--; - info("\n"); + LOG_INF(""); for (size_t i = 0; i < _indent; i++) { - info(" "); + LOG_ERR(" "); } } - info("%c", bytes[i]); + LOG_INF("%c", bytes[i]); if (bytes[i] == '{' || bytes[i] == '[') { _indent++; @@ -44,10 +47,10 @@ int JsonParser::json_printer(const char* bytes, size_t len, void* data) && (bytes[i] == ',' || bytes[i] == '{' || bytes[i] == '}' || bytes[i] == '[' || bytes[i] == ']')) { - info("\n"); + LOG_INF(""); for (size_t i = 0; i < _indent; i++) { - info(" "); + LOG_INF(" "); } } } @@ -71,14 +74,14 @@ void commit() _idx = 0; if (!ok) { - info("parse end error\n"); + LOG_INF("parse end error"); } } -void flush_error() +void flush_LOG_ERRR() { _idx = 0; - error("input buffer overflow, flushing\n"); + LOG_ERR("input buffer overflow, flushing"); } void JsonParser::init() @@ -86,7 +89,7 @@ void JsonParser::init() /* nothing to do */ } -void JsonParser::add_text(uint8_t* buf, size_t size) +void JsonParser::add_text(const uint8_t* buf, size_t size) { for (size_t i = 0; i < size; i++) { @@ -105,7 +108,7 @@ void JsonParser::add_text(uint8_t* buf, size_t size) _idx++; if (_idx >= BUF_SIZE) { - flush_error(); + flush_LOG_ERRR(); } } }