diff --git a/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreationTask.java b/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreationTask.java index 01cdb832a..0810abbdb 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreationTask.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreationTask.java @@ -9,7 +9,6 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.sync.GroupId; import org.briarproject.briar.api.media.AttachmentHeader; import org.briarproject.briar.api.messaging.MessagingManager; -import org.jsoup.UnsupportedMimeTypeException; import java.io.IOException; import java.io.InputStream; @@ -98,8 +97,7 @@ class AttachmentCreationTask { String contentType = contentResolver.getType(uri); if (contentType == null) throw new IOException("null content type"); if (!asList(getSupportedImageContentTypes()).contains(contentType)) { - String uriString = uri.toString(); - throw new UnsupportedMimeTypeException("", contentType, uriString); + throw new UnsupportedMimeTypeException(contentType, uri); } InputStream is = contentResolver.openInputStream(uri); if (is == null) throw new IOException(); diff --git a/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreatorImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreatorImpl.java index fdc27c690..85782bd71 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreatorImpl.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreatorImpl.java @@ -14,7 +14,6 @@ import org.briarproject.briar.api.media.Attachment; import org.briarproject.briar.api.media.AttachmentHeader; import org.briarproject.briar.api.media.FileTooBigException; import org.briarproject.briar.api.messaging.MessagingManager; -import org.jsoup.UnsupportedMimeTypeException; import java.io.IOException; import java.util.ArrayList; diff --git a/briar-android/src/main/java/org/briarproject/briar/android/attachment/UnsupportedMimeTypeException.java b/briar-android/src/main/java/org/briarproject/briar/android/attachment/UnsupportedMimeTypeException.java new file mode 100644 index 000000000..5b8cb7b35 --- /dev/null +++ b/briar-android/src/main/java/org/briarproject/briar/android/attachment/UnsupportedMimeTypeException.java @@ -0,0 +1,24 @@ +package org.briarproject.briar.android.attachment; + +import android.net.Uri; + +import java.io.IOException; + +public class UnsupportedMimeTypeException extends IOException { + + private final String mimeType; + private final Uri uri; + + public UnsupportedMimeTypeException(String mimeType, Uri uri) { + this.mimeType = mimeType; + this.uri = uri; + } + + public String getMimeType() { + return mimeType; + } + + public Uri getUri() { + return uri; + } +} diff --git a/briar-android/src/main/java/org/briarproject/briar/android/settings/SettingsViewModel.java b/briar-android/src/main/java/org/briarproject/briar/android/settings/SettingsViewModel.java index a8236ef85..875feaa05 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/settings/SettingsViewModel.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/settings/SettingsViewModel.java @@ -11,10 +11,10 @@ import org.briarproject.bramble.api.identity.LocalAuthor; import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.util.LogUtils; import org.briarproject.briar.android.attachment.ImageCompressor; +import org.briarproject.briar.android.attachment.UnsupportedMimeTypeException; import org.briarproject.briar.api.avatar.AvatarManager; import org.briarproject.briar.api.identity.AuthorInfo; import org.briarproject.briar.api.identity.AuthorManager; -import org.jsoup.UnsupportedMimeTypeException; import java.io.IOException; import java.io.InputStream; @@ -101,8 +101,7 @@ class SettingsViewModel extends AndroidViewModel { String contentType = contentResolver.getType(uri); if (contentType == null) throw new IOException("null content type"); if (!asList(getSupportedImageContentTypes()).contains(contentType)) { - String uriString = uri.toString(); - throw new UnsupportedMimeTypeException("", contentType, uriString); + throw new UnsupportedMimeTypeException(contentType, uri); } InputStream is = contentResolver.openInputStream(uri); if (is == null) throw new IOException(