Browse Source

null checks and try with resources

renovate/org.robolectric-robolectric-4.x
Ammar Githam 4 years ago
parent
commit
bc6fdd03d9
  1. 5
      app/src/main/java/awais/instagrabber/managers/InboxManager.java
  2. 3
      app/src/main/java/awais/instagrabber/managers/ThreadManager.java
  3. 13
      app/src/main/java/awais/instagrabber/utils/BitmapUtils.java

5
app/src/main/java/awais/instagrabber/managers/InboxManager.java

@ -198,7 +198,7 @@ public final class InboxManager {
hasOlder = false; hasOlder = false;
return; return;
} }
if (!response.getStatus().equals("ok")) {
if (!Objects.equals(response.getStatus(), "ok")) {
Log.e(TAG, "DM inbox fetch response: status not ok"); Log.e(TAG, "DM inbox fetch response: status not ok");
inbox.postValue(Resource.error(R.string.generic_not_ok_response, getCurrentDirectInbox())); inbox.postValue(Resource.error(R.string.generic_not_ok_response, getCurrentDirectInbox()));
hasOlder = false; hasOlder = false;
@ -209,12 +209,13 @@ public final class InboxManager {
viewer = response.getViewer(); viewer = response.getViewer();
} }
final DirectInbox inbox = response.getInbox(); final DirectInbox inbox = response.getInbox();
if (inbox == null) return;
if (!TextUtils.isEmpty(cursor)) { if (!TextUtils.isEmpty(cursor)) {
final DirectInbox currentDirectInbox = getCurrentDirectInbox(); final DirectInbox currentDirectInbox = getCurrentDirectInbox();
if (currentDirectInbox != null) { if (currentDirectInbox != null) {
List<DirectThread> threads = currentDirectInbox.getThreads(); List<DirectThread> threads = currentDirectInbox.getThreads();
threads = threads == null ? new LinkedList<>() : new LinkedList<>(threads); threads = threads == null ? new LinkedList<>() : new LinkedList<>(threads);
threads.addAll(inbox.getThreads());
threads.addAll(inbox.getThreads() == null ? Collections.emptyList() : inbox.getThreads());
inbox.setThreads(threads); inbox.setThreads(threads);
} }
} }

3
app/src/main/java/awais/instagrabber/managers/ThreadManager.java

@ -16,7 +16,6 @@ import com.google.common.collect.Iterables;
import org.json.JSONObject; import org.json.JSONObject;
import java.io.File; import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException; import java.io.IOException;
import java.net.HttpURLConnection; import java.net.HttpURLConnection;
import java.util.ArrayList; import java.util.ArrayList;
@ -1008,7 +1007,7 @@ public final class ThreadManager {
return; return;
} }
sendPhoto(data, uri, dimensions.first, dimensions.second); sendPhoto(data, uri, dimensions.first, dimensions.second);
} catch (FileNotFoundException e) {
} catch (IOException e) {
data.postValue(Resource.error(e.getMessage(), null)); data.postValue(Resource.error(e.getMessage(), null));
Log.e(TAG, "sendPhoto: ", e); Log.e(TAG, "sendPhoto: ", e);
} }

13
app/src/main/java/awais/instagrabber/utils/BitmapUtils.java

@ -17,7 +17,6 @@ import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.ListenableFuture;
import java.io.File; import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
@ -243,13 +242,15 @@ public final class BitmapUtils {
* @return dimensions of the image * @return dimensions of the image
*/ */
public static Pair<Integer, Integer> decodeDimensions(@NonNull final ContentResolver contentResolver, public static Pair<Integer, Integer> decodeDimensions(@NonNull final ContentResolver contentResolver,
@NonNull final Uri uri) throws FileNotFoundException {
@NonNull final Uri uri) throws IOException {
BitmapFactory.Options options = new BitmapFactory.Options(); BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true; options.inJustDecodeBounds = true;
BitmapFactory.decodeStream(contentResolver.openInputStream(uri), null, options);
return (options.outWidth == -1 || options.outHeight == -1)
? null
: new Pair<>(options.outWidth, options.outHeight);
try (final InputStream stream = contentResolver.openInputStream(uri)) {
BitmapFactory.decodeStream(stream, null, options);
return (options.outWidth == -1 || options.outHeight == -1)
? null
: new Pair<>(options.outWidth, options.outHeight);
}
} }
public static File convertToJpegAndSaveToFile(@NonNull final Bitmap bitmap, @Nullable final File file) throws IOException { public static File convertToJpegAndSaveToFile(@NonNull final Bitmap bitmap, @Nullable final File file) throws IOException {

Loading…
Cancel
Save