Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2981)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PwsClient.java

Issue 1415183008: Use new Physical Web service on Google infrastructure (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « build/android/gyp/java_google_api_keys.py ('k') | google_apis/google_api_keys.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PwsClient.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PwsClient.java b/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PwsClient.java
index 5e661ea50c285335b6ff932ebf51dbbb93f17b31..7fff8c24bba8d8ac6770955a0faa525404bdb565 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PwsClient.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PwsClient.java
@@ -9,6 +9,8 @@ import android.os.AsyncTask;
import org.chromium.base.Log;
import org.chromium.base.ThreadUtils;
+import org.chromium.chrome.GoogleAPIKeys;
+import org.chromium.chrome.browser.ChromeVersionInfo;
import org.json.JSONArray;
import org.json.JSONException;
@@ -23,7 +25,8 @@ import java.util.Collection;
*/
class PwsClient {
private static final String TAG = "PhysicalWeb";
- private static final String ENDPOINT_URL = "https://url-caster.appspot.com/resolve-scan";
+ private static final String ENDPOINT_URL =
+ "https://physicalweb.googleapis.com/v1alpha1/urls:resolve";
/**
* Callback that is run after the PWS sends a response to a resolve-scan request.
@@ -48,6 +51,14 @@ class PwsClient {
public void onIconReceived(String iconUrl, Bitmap iconBitmap);
}
+ private String getApiKey() {
+ if (ChromeVersionInfo.isStableBuild()) {
+ return GoogleAPIKeys.GOOGLE_API_KEY;
+ } else {
+ return GoogleAPIKeys.GOOGLE_API_KEY_PHYSICAL_WEB_TEST;
+ }
+ }
+
private static JSONObject createResolveScanPayload(Collection<String> urls)
throws JSONException {
// Encode the urls.
@@ -60,7 +71,7 @@ class PwsClient {
// Organize the data into a single object.
JSONObject jsonObject = new JSONObject();
- jsonObject.put("objects", objects);
+ jsonObject.put("urls", objects);
return jsonObject;
}
@@ -69,9 +80,9 @@ class PwsClient {
Collection<PwsResult> pwsResults = new ArrayList<>();
JSONArray metadata;
try {
- metadata = result.getJSONArray("metadata");
+ metadata = result.getJSONArray("results");
} catch (JSONException e) {
- Log.e(TAG, "PWS returned invalid metadata", e);
+ Log.e(TAG, "PWS returned invalid data", e);
return pwsResults;
}
@@ -79,14 +90,15 @@ class PwsClient {
for (int i = 0; i < metadata.length(); i++) {
try {
JSONObject obj = metadata.getJSONObject(i);
- String requestUrl = obj.getString("id");
- String siteUrl = obj.getString("url");
- String iconUrl = obj.optString("icon", null);
- String title = obj.optString("title", "");
- String description = obj.optString("description", "");
- pwsResults.add(new PwsResult(requestUrl, siteUrl, iconUrl, title, description));
+ JSONObject pageInfo = obj.getJSONObject("pageInfo");
+ String scannedUrl = obj.getString("scannedUrl");
+ String resolvedUrl = obj.getString("resolvedUrl");
+ String iconUrl = pageInfo.optString("icon", null);
+ String title = pageInfo.optString("title", "");
+ String description = pageInfo.optString("description", "");
+ pwsResults.add(new PwsResult(scannedUrl, resolvedUrl, iconUrl, title, description));
} catch (JSONException e) {
- Log.e(TAG, "PWS returned invalid metadata", e);
+ Log.e(TAG, "PWS returned invalid data", e);
continue;
}
}
@@ -126,7 +138,8 @@ class PwsClient {
HttpRequest request = null;
try {
JSONObject payload = createResolveScanPayload(broadcastUrls);
- request = new JsonObjectHttpRequest(ENDPOINT_URL, payload, requestCallback);
+ String url = ENDPOINT_URL + "?key=" + getApiKey();
+ request = new JsonObjectHttpRequest(url, payload, requestCallback);
} catch (MalformedURLException e) {
Log.e(TAG, "Error creating PWS HTTP request", e);
return;
« no previous file with comments | « build/android/gyp/java_google_api_keys.py ('k') | google_apis/google_api_keys.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698