diff options
author | Brad Leege <bleege@gmail.com> | 2015-02-25 17:08:12 -0600 |
---|---|---|
committer | Brad Leege <bleege@gmail.com> | 2015-02-25 17:08:12 -0600 |
commit | 1d99422a9db7a991ea31d41b9a201cfb83b94f34 (patch) | |
tree | 0b1b86ab1e640019adba6f4c979e107b63c60aec /android | |
parent | 9795b7f4765d1b6820dc19cf7edc94c7b4afc050 (diff) | |
parent | a4b6067d4f680c42e7ec033b41bc02c63d111e18 (diff) | |
download | qtlocation-mapboxgl-1d99422a9db7a991ea31d41b9a201cfb83b94f34.tar.gz |
Merge pull request #920 from mapbox/fileSourceJava
Pulling In Initial Java FileSource Implementation
Diffstat (limited to 'android')
3 files changed, 58 insertions, 0 deletions
diff --git a/android/java/MapboxGLAndroidSDK/build.gradle b/android/java/MapboxGLAndroidSDK/build.gradle index 8061343940..ebfe98cd83 100644 --- a/android/java/MapboxGLAndroidSDK/build.gradle +++ b/android/java/MapboxGLAndroidSDK/build.gradle @@ -31,6 +31,7 @@ dependencies { compile 'commons-validator:commons-validator:1.4.1' compile 'com.android.support:support-annotations:21.0.3' compile 'com.android.support:support-v4:21.0.3' + compile 'com.squareup.okhttp:okhttp:2.2.0' } android { diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/constants/MapboxConstants.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/constants/MapboxConstants.java new file mode 100644 index 0000000000..4816dbf4d7 --- /dev/null +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/constants/MapboxConstants.java @@ -0,0 +1,10 @@ +package com.mapbox.mapboxgl.lib.constants; + +import java.util.Locale; + +public class MapboxConstants { + + // Default Locale for data processing (ex: String.toLowerCase(MAPBOX_LOCALE, "foo")) + public static final Locale MAPBOX_LOCALE = Locale.US; + +} diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/util/JavaFileSource.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/util/JavaFileSource.java new file mode 100644 index 0000000000..1081657b0b --- /dev/null +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/util/JavaFileSource.java @@ -0,0 +1,47 @@ +package com.mapbox.mapboxgl.lib.util; + +import com.mapbox.mapboxgl.lib.constants.MapboxConstants; +import com.squareup.okhttp.Callback; +import com.squareup.okhttp.OkHttpClient; +import com.squareup.okhttp.Request; + +public class JavaFileSource { + + private static JavaFileSource instance = null; + + // Single reference to OkHttp for performance gains + private OkHttpClient client; + + /** + * Private Constructor to support Singleton pattern + */ + private JavaFileSource() { + super(); + client = new OkHttpClient(); + } + + /** + * Get the singleton instance of JavaFileSource + * @return Reference to the Singleton Instance of JavaFileSource + */ + public static JavaFileSource getInstance() { + if (instance == null) { + instance = new JavaFileSource(); + } + return instance; + } + + /** + * Make an HTTP Request + * @param resourceUrl URL to resource + * @param callback Callback class + */ + public void request(final String resourceUrl, final Callback callback) { + Request request = new Request.Builder().url(resourceUrl).tag(resourceUrl.toLowerCase(MapboxConstants.MAPBOX_LOCALE)).build(); + client.newCall(request).enqueue(callback); + } + + public void cancel(final String resourceUrl) { + client.cancel(resourceUrl.toLowerCase(MapboxConstants.MAPBOX_LOCALE)); + } +} |