void FBTestPluginAPI::getURLCallback(const FB::JSObjectPtr& callback, bool success, const FB::HeaderMap& headers, const boost::shared_array<uint8_t>& data, const size_t size) { FB::VariantMap outHeaders; for (FB::HeaderMap::const_iterator it = headers.begin(); it != headers.end(); ++it) { if (headers.count(it->first) > 1) { if (outHeaders.find(it->first) != outHeaders.end()) { outHeaders[it->first].cast<FB::VariantList>().push_back(it->second); } else { outHeaders[it->first] = FB::VariantList(FB::variant_list_of(it->second)); } } else { outHeaders[it->first] = it->second; } } if (success) { std::string dstr(reinterpret_cast<const char*>(data.get()), size); callback->InvokeAsync("", FB::variant_list_of (true) (outHeaders) (dstr) ); } else { callback->InvokeAsync("", FB::variant_list_of(false)); } }
void btlauncherAPI::gotajax(const FB::JSObjectPtr& callback, bool success, const FB::HeaderMap& headers, const boost::shared_array<uint8_t>& data, const size_t size) { FBLOG_INFO("gotajax()", "START"); FB::VariantMap response; response["allowed"] = true; response["success"] = success; if(!success) { FBLOG_INFO("gotajax()", "unsuccessful"); callback->InvokeAsync("", FB::variant_list_of(response)); FBLOG_INFO("gotajax()", "END"); return; } FB::VariantMap outHeaders; for (FB::HeaderMap::const_iterator it = headers.begin(); it != headers.end(); ++it) { if (headers.count(it->first) > 1) { if (outHeaders.find(it->first) != outHeaders.end()) { outHeaders[it->first].cast<FB::VariantList>().push_back(it->second); } else { outHeaders[it->first] = FB::VariantList(FB::variant_list_of(it->second)); } } else { outHeaders[it->first] = it->second; } } response["headers"] = outHeaders; response["size"] = size; std::string result = std::string((const char*) data.get(), size); response["data"] = result; callback->InvokeAsync("", FB::variant_list_of(response)); FBLOG_INFO("gotajax()", "END"); }