void populateServiceSpecificProtobufStatsList(serviceInstanceApi * servApi, KeyValueList * list) { (servApi->serviceSpecStatsMutex).lock(); list->set_category("Service_Specific_Stats"); for(int i = BASE_INDX_STR_DATA_ARCHIVER_RABBITMQ_STATS; i < BASE_INDX_STR_DATA_ARCHIVER_RABBITMQ_STATS + NUM_INDX_STR_DATA_ARCHIVER_RABBITMQ_STATS; i++) { KeyValue * pair = list->add_element(); pair->set_key((*(servApi->serviceSpecStatsLabels))[i]->c_str()); pair->set_stringval(any_cast<std::string *> ((*(servApi->serviceSpecStatsValues))[i])->c_str()); } for(int i = BASE_INDX_UINT_DATA_ARCHIVER_RABBITMQ_STATS; i < BASE_INDX_UINT_DATA_ARCHIVER_RABBITMQ_STATS + NUM_INDX_UINT_DATA_ARCHIVER_RABBITMQ_STATS; i++) { KeyValue * pair = list->add_element(); pair->set_key((*(servApi->serviceSpecStatsLabels))[i]->c_str()); pair->set_uintegerval(*(any_cast<uint32_t *> ((*(servApi->serviceSpecStatsValues))[i]))); } for(int i = BASE_INDX_INT_DATA_ARCHIVER_RABBITMQ_STATS; i < BASE_INDX_INT_DATA_ARCHIVER_RABBITMQ_STATS + NUM_INDX_INT_DATA_ARCHIVER_RABBITMQ_STATS; i++) { KeyValue * pair = list->add_element(); pair->set_key((*(servApi->serviceSpecStatsLabels))[i]->c_str()); pair->set_integerval(*(any_cast<int32_t *> ((*(servApi->serviceSpecStatsValues))[i]))); } for(int i = BASE_INDX_FLT_DATA_ARCHIVER_RABBITMQ_STATS; i < BASE_INDX_FLT_DATA_ARCHIVER_RABBITMQ_STATS + NUM_INDX_FLT_DATA_ARCHIVER_RABBITMQ_STATS; i++) { KeyValue * pair = list->add_element(); pair->set_key((*(servApi->serviceSpecStatsLabels))[i]->c_str()); pair->set_floatval(*(any_cast<float *> ((*(servApi->serviceSpecStatsValues))[i]))); } (servApi->serviceSpecStatsMutex).unlock(); }