summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/AccountsManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/AccountsManager.java')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/AccountsManager.java112
1 files changed, 0 insertions, 112 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/AccountsManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/AccountsManager.java
deleted file mode 100644
index 4fd0200a37..0000000000
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/AccountsManager.java
+++ /dev/null
@@ -1,112 +0,0 @@
-package com.mapbox.mapboxsdk;
-
-import android.content.Context;
-import android.content.SharedPreferences;
-import android.support.annotation.NonNull;
-import android.text.TextUtils;
-import android.text.format.DateUtils;
-
-import com.mapbox.android.accounts.v1.MapboxAccounts;
-import com.mapbox.mapboxsdk.constants.MapboxConstants;
-
-/**
- * REMOVAL OR MODIFICATION OF THE FOLLOWING CODE VIOLATES THE MAPBOX TERMS
- * OF SERVICE
- *
- * The following code is used to access Mapbox's Mapping APIs.
- *
- * Removal or modification of this code when used with Mapbox's Mapping APIs
- * can result in termination of your agreement and/or your account with
- * Mapbox.
- *
- * Using this code to access Mapbox Mapping APIs from outside the Mapbox Maps
- * SDK also violates the Mapbox Terms of Service. On Android, Mapping APIs
- * should be accessed using the methods documented at
- * https://www.mapbox.com/android.
- *
- * You can access the Mapbox Terms of Service at https://www.mapbox.com/tos/
- */
-class AccountsManager {
- private static final String PREFERENCE_USER_ID = "com.mapbox.mapboxsdk.accounts.userid";
- private static final String PREFERENCE_TIMESTAMP = "com.mapbox.mapboxsdk.accounts.timestamp";
- private static final String PREFERENCE_SKU_TOKEN = "com.mapbox.mapboxsdk.accounts.skutoken";
-
- private long timestamp;
- private String skuToken;
-
- AccountsManager() {
- String userId = validateUserId();
- validateRotation(userId);
- }
-
- private String validateUserId() {
- SharedPreferences sharedPreferences = getSharedPreferences();
- String userId = sharedPreferences.getString(PREFERENCE_USER_ID, "");
- if (TextUtils.isEmpty(userId)) {
- userId = generateUserId();
- SharedPreferences.Editor editor = getSharedPreferences().edit();
- editor.putString(PREFERENCE_USER_ID, userId);
- editor.apply();
- }
-
- return userId;
- }
-
- private void validateRotation(String userId) {
- SharedPreferences sharedPreferences = getSharedPreferences();
- timestamp = sharedPreferences.getLong(PREFERENCE_TIMESTAMP, 0L);
- skuToken = sharedPreferences.getString(PREFERENCE_SKU_TOKEN, "");
- if (timestamp == 0L || TextUtils.isEmpty(skuToken)) {
- skuToken = generateSkuToken(userId);
- timestamp = persistRotation(skuToken);
- }
- }
-
- String getSkuToken() {
- if (isExpired()) {
- SharedPreferences sharedPreferences = getSharedPreferences();
- String userId = sharedPreferences.getString(PREFERENCE_USER_ID, "");
- skuToken = generateSkuToken(userId);
- timestamp = persistRotation(skuToken);
- }
-
- return skuToken;
- }
-
- private boolean isExpired() {
- return isExpired(getNow(), timestamp);
- }
-
- static boolean isExpired(long now, long then) {
- return ((now - then) > DateUtils.HOUR_IN_MILLIS);
- }
-
- private long persistRotation(String skuToken) {
- long now = getNow();
- SharedPreferences.Editor editor = getSharedPreferences().edit();
- editor.putLong(PREFERENCE_TIMESTAMP, now);
- editor.putString(PREFERENCE_SKU_TOKEN, skuToken);
- editor.apply();
- return now;
- }
-
- @NonNull
- private SharedPreferences getSharedPreferences() {
- return Mapbox.getApplicationContext()
- .getSharedPreferences(MapboxConstants.MAPBOX_SHARED_PREFERENCES, Context.MODE_PRIVATE);
- }
-
- static long getNow() {
- return System.currentTimeMillis();
- }
-
- @NonNull
- private String generateUserId() {
- return MapboxAccounts.obtainEndUserId();
- }
-
- @NonNull
- private String generateSkuToken(String userId) {
- return MapboxAccounts.obtainMapsSkuUserToken(userId);
- }
-}