summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/ThreadUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/ThreadUtils.java')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/ThreadUtils.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/ThreadUtils.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/ThreadUtils.java
new file mode 100644
index 0000000000..7dfd5ddd98
--- /dev/null
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/ThreadUtils.java
@@ -0,0 +1,17 @@
+package com.mapbox.mapboxsdk.utils;
+
+import android.os.Looper;
+import com.mapbox.mapboxsdk.exceptions.CalledFromWorkerThreadException;
+
+public class ThreadUtils {
+
+ /**
+ * Validates if execution is occuring on the main thread.
+ */
+ public static void checkThread(String origin) {
+ if (Looper.myLooper() != Looper.getMainLooper()) {
+ throw new CalledFromWorkerThreadException(
+ String.format("%s interactions should happen on the UI thread.",origin));
+ }
+ }
+}