X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fthird_party%2Flibaddressinput%2Fsrc%2Fjava%2Fsrc%2Fcom%2Fandroid%2Fi18n%2Faddressinput%2FJsonpRequestBuilder.java;h=d5bc6084244c3bd6bd3292c4112c2ae1126f518b;hb=1afa4dd80ef85af7c90efaea6959db1d92330844;hp=0f40f1535e063d77a4d8800c05875d6cc8cefc46;hpb=90762837333c13ccf56f2ad88e4481fc71e8d281;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/third_party/libaddressinput/src/java/src/com/android/i18n/addressinput/JsonpRequestBuilder.java b/src/third_party/libaddressinput/src/java/src/com/android/i18n/addressinput/JsonpRequestBuilder.java index 0f40f15..d5bc608 100644 --- a/src/third_party/libaddressinput/src/java/src/com/android/i18n/addressinput/JsonpRequestBuilder.java +++ b/src/third_party/libaddressinput/src/java/src/com/android/i18n/addressinput/JsonpRequestBuilder.java @@ -33,98 +33,98 @@ import java.net.URLEncoder; */ class JsonpRequestBuilder { - /** - * Re-implementation of the com.google.gwt.user.client.rpc.AsyncCallback interface. - */ - interface AsyncCallback { - - public void onFailure(Throwable caught); - - public void onSuccess(T result); - } - - /** - * @param timeout The expected timeout (ms) for this request. - */ - void setTimeout(int timeout) { - HttpParams params = AsyncHttp.CLIENT.getParams(); - HttpConnectionParams.setConnectionTimeout(params, timeout); - HttpConnectionParams.setSoTimeout(params, timeout); + /** + * Re-implementation of the com.google.gwt.user.client.rpc.AsyncCallback interface. + */ + interface AsyncCallback { + + public void onFailure(Throwable caught); + + public void onSuccess(T result); + } + + /** + * @param timeout The expected timeout (ms) for this request. + */ + void setTimeout(int timeout) { + HttpParams params = AsyncHttp.CLIENT.getParams(); + HttpConnectionParams.setConnectionTimeout(params, timeout); + HttpConnectionParams.setSoTimeout(params, timeout); + } + + /** + * Sends a JSONP request and expects a JsoMap object as a result. + */ + void requestObject(String url, AsyncCallback callback) { + HttpUriRequest request = new HttpGet(encodeUrl(url)); + (new AsyncHttp(request, callback)).start(); + } + + /** + * Simple implementation of asynchronous HTTP GET. + */ + private static class AsyncHttp extends Thread { + + private static final HttpClient CLIENT = new DefaultHttpClient(); + + private HttpUriRequest request; + + private AsyncCallback callback; + + protected AsyncHttp(HttpUriRequest request, AsyncCallback callback) { + this.request = request; + this.callback = callback; } - /** - * Sends a JSONP request and expects a JsoMap object as a result. - */ - void requestObject(String url, AsyncCallback callback) { - HttpUriRequest request = new HttpGet(encodeUrl(url)); - (new AsyncHttp(request, callback)).start(); + @Override + public void run() { + try { + final String response; + synchronized (CLIENT) { + response = CLIENT.execute(request, new BasicResponseHandler()); + } + callback.onSuccess(JsoMap.buildJsoMap(response)); + } catch (Exception e) { + callback.onFailure(e); + } } - - /** - * Simple implementation of asynchronous HTTP GET. - */ - private static class AsyncHttp extends Thread { - - private static final HttpClient CLIENT = new DefaultHttpClient(); - - private HttpUriRequest mRequest; - - private AsyncCallback mCallback; - - protected AsyncHttp(HttpUriRequest request, AsyncCallback callback) { - mRequest = request; - mCallback = callback; + } + + /** + * A quick hack to transform a string into an RFC 3986 compliant URL. + * + * TODO: Refactor the code to stop passing URLs around as strings, to eliminate the need for + * this hack. + */ + private static String encodeUrl(String url) { + int length = url.length(); + StringBuilder tmp = new StringBuilder(length); + + try { + for (int i = 0; i < length; i++) { + int j = i; + char c = '\0'; + for (; j < length; j++) { + c = url.charAt(j); + if (c == ':' || c == '/') { + break; + } } - - @Override - public void run() { - try { - final String response; - synchronized (CLIENT) { - response = CLIENT.execute(mRequest, new BasicResponseHandler()); - } - mCallback.onSuccess(JsoMap.buildJsoMap(response)); - } catch (Exception e) { - mCallback.onFailure(e); - } + if (j == length) { + tmp.append(URLEncoder.encode(url.substring(i), "UTF-8")); + break; + } else if (j > i) { + tmp.append(URLEncoder.encode(url.substring(i, j), "UTF-8")); + tmp.append(c); + i = j; + } else { + tmp.append(c); } + } + } catch (UnsupportedEncodingException e) { + throw new RuntimeException(e); // Impossible. } - /** - * A quick hack to transform a string into an RFC 3986 compliant URL. - * - * TODO: Refactor the code to stop passing URLs around as strings, to eliminate the need for - * this hack. - */ - private static String encodeUrl(String url) { - int length = url.length(); - StringBuilder tmp = new StringBuilder(length); - - try { - for (int i = 0; i < length; i++) { - int j = i; - char c = '\0'; - for (; j < length; j++) { - c = url.charAt(j); - if (c == ':' || c == '/') { - break; - } - } - if (j == length) { - tmp.append(URLEncoder.encode(url.substring(i), "UTF-8")); - break; - } else if (j > i) { - tmp.append(URLEncoder.encode(url.substring(i, j), "UTF-8")); - tmp.append(c); - i = j; - } else { - tmp.append(c); - } - } - } catch (UnsupportedEncodingException e) { - throw new RuntimeException(e); // Impossible. - } - - return tmp.toString(); - } + return tmp.toString(); + } }