diff options
author | Tobrun <tobrun@mapbox.com> | 2017-04-11 00:44:18 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-11 00:44:18 +0200 |
commit | d7f9378bca4bb6b4a6b3871b0e42961cae6a847b (patch) | |
tree | 0f4b8cf12c2b371ae558557fa341c3960d72c2f7 /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/Mapbox.java | |
parent | 6b29b2bde6048669eaa7ad79446915d2e34c4233 (diff) | |
download | qtlocation-mapboxgl-d7f9378bca4bb6b4a6b3871b0e42961cae6a847b.tar.gz |
[android] - avoid nullpointer by validating Mapbox.java creation when validating accessTokens. (#8680)
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/Mapbox.java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/Mapbox.java | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/Mapbox.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/Mapbox.java index 83d04e7023..83e2be3a69 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/Mapbox.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/Mapbox.java @@ -7,7 +7,7 @@ import android.support.annotation.NonNull; import android.text.TextUtils; import com.mapbox.mapboxsdk.constants.MapboxConstants; -import com.mapbox.mapboxsdk.exceptions.InvalidAccessTokenException; +import com.mapbox.mapboxsdk.exceptions.MapboxConfigurationException; import com.mapbox.mapboxsdk.location.LocationSource; import com.mapbox.mapboxsdk.net.ConnectivityReceiver; import com.mapbox.services.android.telemetry.MapboxTelemetry; @@ -55,20 +55,30 @@ public final class Mapbox { * @return Mapbox Access Token */ public static String getAccessToken() { + validateMapbox(); validateAccessToken(); return INSTANCE.accessToken; } /** + * Runtime validation of Mapbox creation. + */ + private static void validateMapbox() throws MapboxConfigurationException { + if (INSTANCE == null) { + throw new MapboxConfigurationException(); + } + } + + /** * Runtime validation of Access Token. * - * @throws InvalidAccessTokenException exception thrown when not using a valid accessToken + * @throws MapboxConfigurationException exception thrown when not using a valid accessToken */ - private static void validateAccessToken() throws InvalidAccessTokenException { + private static void validateAccessToken() throws MapboxConfigurationException { String accessToken = INSTANCE.accessToken; if (TextUtils.isEmpty(accessToken) || (!accessToken.toLowerCase(MapboxConstants.MAPBOX_LOCALE).startsWith("pk.") && !accessToken.toLowerCase(MapboxConstants.MAPBOX_LOCALE).startsWith("sk."))) { - throw new InvalidAccessTokenException(); + throw new MapboxConfigurationException(); } } |