std::string jsonStringResult(std::string s, const char *id) { char *escaped = cJSON_escapestring(s.c_str()); // Note - escaped now has quotes around it std::string r = jsonResult(escaped,id); cJSON_free(escaped); return r; }
void ViAcoustidIdentifier::processReply(bool success) { if(success) { QVariantMap result = jsonResult().toVariantMap(); if(result["status"].toString() == "ok") { QList<ViMetadata> metadatas; QList<QVariant> results = result["results"].toList(); for(int i = 0; i < results.size(); ++i) { QList<QVariant> recordings = results[i].toMap()["recordings"].toList(); for(int j = 0; j < recordings.size(); ++j) { ViMetadata metadata; QVariantMap infoMap = recordings[j].toMap(); metadata.setTitle(infoMap["title"].toString()); QList<QVariant> artistsMap = infoMap["artists"].toList(); if(!artistsMap.isEmpty()) { metadata.setArtist(artistsMap[0].toMap()["name"].toString()); } metadatas.append(metadata); } } finish(metadatas); return; } } finish(); }
std::string jsonIntResult(int r, const char *id) { return jsonResult(NosuchSnprintf("%d",r),id); }
std::string jsonDoubleResult(double r, const char *id) { return jsonResult(NosuchSnprintf("%f",r),id); }