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