| | |
| | | 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_json( T &list, string &json) |
| | | { |
| | | using TMPT = typename std::remove_reference<decltype(*list.begin())>::type; |
| | | TMPT t; |
| | | string jsonString; |
| | | int len = list.size(); |
| | | bool bRet = false; |
| | | jsonString += "["; |
| | | |
| | | for ( int i= 0 ; i < len ; i++ ) |
| | | { |
| | | string tmpjsonString; |
| | | bRet = proto_to_json(list[i], tmpjsonString); |
| | | if ( (len > 1) &&(i < len - 1)) |
| | | { |
| | | tmpjsonString += ","; |
| | | } |
| | | jsonString += tmpjsonString; |
| | | } |
| | | |
| | | jsonString += "]"; |
| | | |
| | | json = jsonString; |
| | | return bRet; |
| | | } |
| | | |
| | | |
| | | template <class T> |
| | | bool bus_dbapi_get_list(char *json, const char *flag_key, const char *data_key, T &list) { |
| | | char *ptr_value = NULL; |
| | |
| | | } |
| | | |
| | | template <class T> |
| | | bool bus_dbapi_get_list(char *json, bool is_array, T &list) { |
| | | char *success_name = NULL; |
| | | char *data_name = NULL; |
| | | if ( is_array ) |
| | | { |
| | | success_name = NULL; |
| | | data_name = NULL; |
| | | } |
| | | else |
| | | { |
| | | success_name = (char *)"success"; |
| | | data_name = (char *)"data"; |
| | | } |
| | | |
| | | return bus_dbapi_get_list(json, (const char *)success_name, (const char *)data_name, list); |
| | | } |
| | | |
| | | template <class T> |
| | | bool bus_dbapi_get_list(void *handle, const char *topic, T &list) { |
| | | crepmsg *repmsg = NULL; |
| | | size_t len = 0; |
| | |
| | | return iRet; |
| | | } |
| | | |
| | | #endif |
| | | #endif |