| | |
| | | |
| | | bool bus_dbapi_get(void *handle, const char *topic, google::protobuf::Message &message); |
| | | bool bus_dbapi_get_topic_data(void *handle, const char *topic, crepmsg **pptr_repmsg, size_t len); |
| | | extern "C" int bus_dbapi_get_json_data_by_key(const char * json, const char *flag_key, |
| | | const char *data_key, char ** pptr_data, |
| | | yyjson_type *ptr_type); |
| | | bool bus_dbapi_get_topic_data(void *handle, const char *topic, crepmsg **pptr_repmsg, size_t len, std::map<string, string> ¶ms); |
| | | extern "C" int bus_dbapi_get_json_data_by_key(const char *json, const char *flag_key, const char *data_key, char **pptr_data, yyjson_type *ptr_type); |
| | | extern "C" int bus_dbapi_get_json_data(const char *json, char **pptr_data, uint8_t *ptr_type); |
| | | bool bus_dbapi_get_str(void *handle, const char *topic, char **pptr_str); |
| | | int get_value_by_key(char *json, const char *key, char **pptr_data); |
| | | |
| | | template <class T> |
| | | bool bus_dbapi_get_list(char *json, const char *flag_key, const char *data_key, T &list) { |
| | | bool bus_dbapi_get_list(char *json, const char *flag_key, const char *data_key, T &list) { |
| | | char *ptr_value = NULL; |
| | | size_t data_len = 0; |
| | | //get the topic json data |
| | |
| | | return iRet; |
| | | } |
| | | |
| | | template <class T> |
| | | bool bus_dbapi_get_list(void *handle, const char *topic, T &list, std::map<string, string> ¶ms) { |
| | | crepmsg *repmsg = NULL; |
| | | size_t len = 0; |
| | | bool iRet = false; |
| | | iRet = bus_dbapi_get_topic_data(handle, topic, &repmsg, len, params); |
| | | if ((false == iRet) || (NULL == repmsg)) { |
| | | return false; |
| | | } |
| | | |
| | | iRet = bus_dbapi_get_list(repmsg->data, list); |
| | | free_reply_msg(repmsg); |
| | | return iRet; |
| | | } |
| | | |
| | | #endif |