From dfea3f9583e903180970c2c03ae0ff61e19af1c8 Mon Sep 17 00:00:00 2001
From: Taras <tarassmakula@gmail.com>
Date: Sat, 26 Feb 2022 01:09:31 +0200
Subject: [PATCH] Create local file helper

---
 .../com/futo/circles/glide/LocalFileHelper.kt | 25 +++++++++++++++++++
 1 file changed, 25 insertions(+)
 create mode 100644 app/src/main/java/com/futo/circles/glide/LocalFileHelper.kt

diff --git a/app/src/main/java/com/futo/circles/glide/LocalFileHelper.kt b/app/src/main/java/com/futo/circles/glide/LocalFileHelper.kt
new file mode 100644
index 000000000..ff0c3588d
--- /dev/null
+++ b/app/src/main/java/com/futo/circles/glide/LocalFileHelper.kt
@@ -0,0 +1,25 @@
+package com.futo.circles.glide
+
+import android.content.Context
+import android.net.Uri
+import androidx.documentfile.provider.DocumentFile
+import org.matrix.android.sdk.api.extensions.orFalse
+import java.io.InputStream
+
+class LocalFileHelper(private val context: Context) {
+
+    fun isLocalFile(fileUri: String?): Boolean {
+        return fileUri
+            ?.let { Uri.parse(it) }
+            ?.let { DocumentFile.fromSingleUri(context, it) }
+            ?.exists()
+            .orFalse()
+    }
+
+    fun openInputStream(fileUri: String?): InputStream? {
+        return fileUri
+            ?.takeIf { isLocalFile(it) }
+            ?.let { Uri.parse(it) }
+            ?.let { context.contentResolver.openInputStream(it) }
+    }
+}
-- 
GitLab