mirror of
				https://github.com/KokaKiwi/BarInsta
				synced 2025-11-04 05:25:35 +00:00 
			
		
		
		
	patrol certain error strings
This commit is contained in:
		
							parent
							
								
									74d3e1ad7d
								
							
						
					
					
						commit
						fbb5c244ae
					
				@ -131,7 +131,10 @@ public class GifPickerBottomDialogFragment extends BottomSheetDialogFragment {
 | 
			
		||||
                case ERROR:
 | 
			
		||||
                    final Context context = getContext();
 | 
			
		||||
                    if (context != null && imagesResource.message != null) {
 | 
			
		||||
                        Snackbar.make(context, binding.getRoot(), imagesResource.message, Snackbar.LENGTH_LONG);
 | 
			
		||||
                        Snackbar.make(context, binding.getRoot(), imagesResource.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    if (context != null && imagesResource.resId != 0) {
 | 
			
		||||
                        Snackbar.make(context, binding.getRoot(), getString(imagesResource.resId), Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    break;
 | 
			
		||||
                case LOADING:
 | 
			
		||||
 | 
			
		||||
@ -204,6 +204,9 @@ public class UserSearchFragment extends Fragment {
 | 
			
		||||
                    if (results.message != null) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), results.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    if (results.resId != 0) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), results.resId, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    if (results.data != null) {
 | 
			
		||||
                        resultsAdapter.submitList(results.data);
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
@ -193,6 +193,9 @@ public class DirectMessageInboxFragment extends Fragment implements SwipeRefresh
 | 
			
		||||
                    if (inboxResource.message != null) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), inboxResource.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    if (inboxResource.resId != 0) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), inboxResource.resId, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    binding.swipeRefreshLayout.setRefreshing(false);
 | 
			
		||||
                    break;
 | 
			
		||||
                case LOADING:
 | 
			
		||||
 | 
			
		||||
@ -329,6 +329,9 @@ public class DirectMessageSettingsFragment extends Fragment implements ConfirmDi
 | 
			
		||||
                    if (resource.message != null) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), resource.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    if (resource.resId != 0) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), resource.resId, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    break;
 | 
			
		||||
                case LOADING:
 | 
			
		||||
                    buttonView.setEnabled(false);
 | 
			
		||||
@ -427,6 +430,9 @@ public class DirectMessageSettingsFragment extends Fragment implements ConfirmDi
 | 
			
		||||
                    if (resource.message != null) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), resource.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    if (resource.resId != 0) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), resource.resId, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    break;
 | 
			
		||||
            }
 | 
			
		||||
        });
 | 
			
		||||
@ -450,6 +456,9 @@ public class DirectMessageSettingsFragment extends Fragment implements ConfirmDi
 | 
			
		||||
                    if (resource.message != null) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), resource.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    if (resource.resId != 0) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), resource.resId, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    break;
 | 
			
		||||
            }
 | 
			
		||||
            pendingUsersAdapter.notifyItemChanged(position);
 | 
			
		||||
@ -477,6 +486,9 @@ public class DirectMessageSettingsFragment extends Fragment implements ConfirmDi
 | 
			
		||||
                        if (resource.message != null) {
 | 
			
		||||
                            Snackbar.make(binding.getRoot(), resource.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                        }
 | 
			
		||||
                        if (resource.resId != 0) {
 | 
			
		||||
                            Snackbar.make(binding.getRoot(), resource.resId, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                        }
 | 
			
		||||
                        break;
 | 
			
		||||
                    case LOADING:
 | 
			
		||||
                        binding.leave.setEnabled(false);
 | 
			
		||||
@ -497,6 +509,9 @@ public class DirectMessageSettingsFragment extends Fragment implements ConfirmDi
 | 
			
		||||
                        if (resource.message != null) {
 | 
			
		||||
                            Snackbar.make(binding.getRoot(), resource.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                        }
 | 
			
		||||
                        if (resource.resId != 0) {
 | 
			
		||||
                            Snackbar.make(binding.getRoot(), resource.resId, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                        }
 | 
			
		||||
                        break;
 | 
			
		||||
                    case LOADING:
 | 
			
		||||
                        binding.end.setEnabled(false);
 | 
			
		||||
 | 
			
		||||
@ -612,6 +612,9 @@ public class DirectMessageThreadFragment extends Fragment implements DirectReact
 | 
			
		||||
                    if (fetchingResource.message != null) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), fetchingResource.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    if (fetchingResource.resId != 0) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), fetchingResource.resId, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    break;
 | 
			
		||||
                case LOADING:
 | 
			
		||||
                    setTitle(getString(R.string.dms_thread_updating));
 | 
			
		||||
@ -750,6 +753,9 @@ public class DirectMessageThreadFragment extends Fragment implements DirectReact
 | 
			
		||||
                    if (resource.message != null) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), resource.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    if (resource.resId != 0) {
 | 
			
		||||
                        Snackbar.make(binding.getRoot(), resource.resId, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                    }
 | 
			
		||||
                    resourceLiveData.removeObservers(getViewLifecycleOwner());
 | 
			
		||||
                    break;
 | 
			
		||||
            }
 | 
			
		||||
@ -1141,6 +1147,9 @@ public class DirectMessageThreadFragment extends Fragment implements DirectReact
 | 
			
		||||
                if (resource.message != null) {
 | 
			
		||||
                    Snackbar.make(binding.getRoot(), resource.message, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                }
 | 
			
		||||
                if (resource.resId != 0) {
 | 
			
		||||
                    Snackbar.make(binding.getRoot(), resource.resId, Snackbar.LENGTH_LONG).show();
 | 
			
		||||
                }
 | 
			
		||||
                resourceLiveData.removeObservers(getViewLifecycleOwner());
 | 
			
		||||
                break;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@ -21,6 +21,7 @@ import java.util.List;
 | 
			
		||||
import java.util.concurrent.TimeUnit;
 | 
			
		||||
import java.util.stream.Collectors;
 | 
			
		||||
 | 
			
		||||
import awais.instagrabber.R;
 | 
			
		||||
import awais.instagrabber.models.Resource;
 | 
			
		||||
import awais.instagrabber.repositories.responses.User;
 | 
			
		||||
import awais.instagrabber.repositories.responses.directmessages.DirectBadgeCount;
 | 
			
		||||
@ -156,7 +157,7 @@ public final class InboxManager {
 | 
			
		||||
                final DirectBadgeCount directBadgeCount = response.body();
 | 
			
		||||
                if (directBadgeCount == null) {
 | 
			
		||||
                    Log.e(TAG, "onResponse: directBadgeCount Response is null");
 | 
			
		||||
                    unseenCount.postValue(Resource.error("Unseen count response is null", getCurrentUnseenCount()));
 | 
			
		||||
                    unseenCount.postValue(Resource.error(R.string.dms_inbox_error_null_count, getCurrentUnseenCount()));
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
                unseenCount.postValue(Resource.success(directBadgeCount.getBadgeCount()));
 | 
			
		||||
@ -188,14 +189,13 @@ public final class InboxManager {
 | 
			
		||||
    private void parseInboxResponse(final DirectInboxResponse response) {
 | 
			
		||||
        if (response == null) {
 | 
			
		||||
            Log.e(TAG, "parseInboxResponse: Response is null");
 | 
			
		||||
            inbox.postValue(Resource.error("Response is null", getCurrentDirectInbox()));
 | 
			
		||||
            inbox.postValue(Resource.error(R.string.generic_null_response, getCurrentDirectInbox()));
 | 
			
		||||
            hasOlder = false;
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        if (!response.getStatus().equals("ok")) {
 | 
			
		||||
            final String msg = "DM inbox fetch response: status not ok";
 | 
			
		||||
            Log.e(TAG, msg);
 | 
			
		||||
            inbox.postValue(Resource.error(msg, getCurrentDirectInbox()));
 | 
			
		||||
            Log.e(TAG, "DM inbox fetch response: status not ok");
 | 
			
		||||
            inbox.postValue(Resource.error(R.string.generic_not_ok_response, getCurrentDirectInbox()));
 | 
			
		||||
            hasOlder = false;
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@ -32,6 +32,7 @@ import java.util.UUID;
 | 
			
		||||
import java.util.concurrent.ConcurrentHashMap;
 | 
			
		||||
import java.util.stream.Collectors;
 | 
			
		||||
 | 
			
		||||
import awais.instagrabber.R;
 | 
			
		||||
import awais.instagrabber.customviews.emoji.Emoji;
 | 
			
		||||
import awais.instagrabber.models.Resource;
 | 
			
		||||
import awais.instagrabber.models.Resource.Status;
 | 
			
		||||
@ -83,10 +84,6 @@ import static awais.instagrabber.utils.Utils.settingsHelper;
 | 
			
		||||
public final class ThreadManager {
 | 
			
		||||
    private static final String TAG = ThreadManager.class.getSimpleName();
 | 
			
		||||
    private static final Object LOCK = new Object();
 | 
			
		||||
    private static final String ERROR_INVALID_USER = "Invalid user";
 | 
			
		||||
    private static final String ERROR_RESPONSE_NOT_OK = "Response status from server was not ok";
 | 
			
		||||
    private static final String ERROR_VIDEO_TOO_LONG = "Instagram does not allow uploading videos longer than 60 secs for Direct messages";
 | 
			
		||||
    private static final String ERROR_AUDIO_TOO_LONG = "Instagram does not allow uploading audio longer than 60 secs";
 | 
			
		||||
    private static final Map<String, ThreadManager> INSTANCE_MAP = new ConcurrentHashMap<>();
 | 
			
		||||
 | 
			
		||||
    private final MutableLiveData<Resource<Object>> fetching = new MutableLiveData<>();
 | 
			
		||||
@ -363,12 +360,12 @@ public final class ThreadManager {
 | 
			
		||||
            public void onResponse(@NonNull final Call<DirectThreadFeedResponse> call, @NonNull final Response<DirectThreadFeedResponse> response) {
 | 
			
		||||
                final DirectThreadFeedResponse feedResponse = response.body();
 | 
			
		||||
                if (feedResponse == null) {
 | 
			
		||||
                    fetching.postValue(Resource.error("response was null!", null));
 | 
			
		||||
                    fetching.postValue(Resource.error(R.string.generic_null_response, null));
 | 
			
		||||
                    Log.e(TAG, "onResponse: response was null!");
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
                if (!feedResponse.getStatus().equals("ok")) {
 | 
			
		||||
                    fetching.postValue(Resource.error("response was not ok", null));
 | 
			
		||||
                    fetching.postValue(Resource.error(R.string.generic_not_ok_response, null));
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
                final DirectThread thread = feedResponse.getThread();
 | 
			
		||||
@ -674,7 +671,7 @@ public final class ThreadManager {
 | 
			
		||||
                          final long byteLength) {
 | 
			
		||||
        if (duration > 60000) {
 | 
			
		||||
            // instagram does not allow uploading audio longer than 60 secs for Direct messages
 | 
			
		||||
            data.postValue(Resource.error(ERROR_AUDIO_TOO_LONG, null));
 | 
			
		||||
            data.postValue(Resource.error(R.string.dms_ERROR_AUDIO_TOO_LONG, null));
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        final Long userId = getCurrentUserId(data);
 | 
			
		||||
@ -794,7 +791,7 @@ public final class ThreadManager {
 | 
			
		||||
                    handleErrorBody(call, response, data);
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
                data.postValue(Resource.error("request was not successful and response error body was null", item));
 | 
			
		||||
                data.postValue(Resource.error(R.string.generic_failed_request, item));
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            @Override
 | 
			
		||||
@ -1056,7 +1053,7 @@ public final class ThreadManager {
 | 
			
		||||
                           final int height) {
 | 
			
		||||
        if (duration > 60000) {
 | 
			
		||||
            // instagram does not allow uploading videos longer than 60 secs for Direct messages
 | 
			
		||||
            data.postValue(Resource.error(ERROR_VIDEO_TOO_LONG, null));
 | 
			
		||||
            data.postValue(Resource.error(R.string.dms_ERROR_VIDEO_TOO_LONG, null));
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        final Long userId = getCurrentUserId(data);
 | 
			
		||||
@ -1125,7 +1122,7 @@ public final class ThreadManager {
 | 
			
		||||
                if (response.isSuccessful()) {
 | 
			
		||||
                    final DirectThreadBroadcastResponse broadcastResponse = response.body();
 | 
			
		||||
                    if (broadcastResponse == null) {
 | 
			
		||||
                        data.postValue(Resource.error("Response was null from server", directItem));
 | 
			
		||||
                        data.postValue(Resource.error(R.string.generic_null_response, directItem));
 | 
			
		||||
                        Log.e(TAG, "enqueueRequest: onResponse: response body is null");
 | 
			
		||||
                        return;
 | 
			
		||||
                    }
 | 
			
		||||
@ -1155,7 +1152,7 @@ public final class ThreadManager {
 | 
			
		||||
                if (response.errorBody() != null) {
 | 
			
		||||
                    handleErrorBody(call, response, data);
 | 
			
		||||
                }
 | 
			
		||||
                data.postValue(Resource.error("request was not successful and response error body was null", directItem));
 | 
			
		||||
                data.postValue(Resource.error(R.string.generic_failed_request, directItem));
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            @Override
 | 
			
		||||
@ -1215,12 +1212,12 @@ public final class ThreadManager {
 | 
			
		||||
                                          @NonNull final MediaUploader.MediaUploadResponse response) {
 | 
			
		||||
        final JSONObject responseJson = response.getResponse();
 | 
			
		||||
        if (responseJson == null || response.getResponseCode() != HttpURLConnection.HTTP_OK) {
 | 
			
		||||
            data.postValue(Resource.error(ERROR_RESPONSE_NOT_OK, null));
 | 
			
		||||
            data.postValue(Resource.error(R.string.generic_not_ok_response, null));
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
        final String status = responseJson.optString("status");
 | 
			
		||||
        if (TextUtils.isEmpty(status) || !status.equals("ok")) {
 | 
			
		||||
            data.postValue(Resource.error(ERROR_RESPONSE_NOT_OK, null));
 | 
			
		||||
            data.postValue(Resource.error(R.string.generic_not_ok_response, null));
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
@ -1253,12 +1250,12 @@ public final class ThreadManager {
 | 
			
		||||
                        handleErrorBody(call, response, data);
 | 
			
		||||
                        return;
 | 
			
		||||
                    }
 | 
			
		||||
                    data.postValue(Resource.error("request was not successful and response error body was null", item));
 | 
			
		||||
                    data.postValue(Resource.error(R.string.generic_failed_request, item));
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
                final DirectThreadBroadcastResponse body = response.body();
 | 
			
		||||
                if (body == null) {
 | 
			
		||||
                    data.postValue(Resource.error("Response is null!", item));
 | 
			
		||||
                    data.postValue(Resource.error(R.string.generic_null_response, item));
 | 
			
		||||
                }
 | 
			
		||||
                // otherwise nothing to do? maybe update the timestamp in the emoji?
 | 
			
		||||
            }
 | 
			
		||||
@ -1282,7 +1279,7 @@ public final class ThreadManager {
 | 
			
		||||
    @Nullable
 | 
			
		||||
    private Long getCurrentUserId(final MutableLiveData<Resource<Object>> data) {
 | 
			
		||||
        if (currentUser == null || currentUser.getPk() <= 0) {
 | 
			
		||||
            data.postValue(Resource.error(ERROR_INVALID_USER, null));
 | 
			
		||||
            data.postValue(Resource.error(R.string.dms_ERROR_INVALID_USER, null));
 | 
			
		||||
            return null;
 | 
			
		||||
        }
 | 
			
		||||
        return currentUser.getPk();
 | 
			
		||||
@ -1777,7 +1774,7 @@ public final class ThreadManager {
 | 
			
		||||
                }
 | 
			
		||||
                final DirectThreadDetailsChangeResponse changeResponse = response.body();
 | 
			
		||||
                if (changeResponse == null) {
 | 
			
		||||
                    data.postValue(Resource.error("Response is null", null));
 | 
			
		||||
                    data.postValue(Resource.error(R.string.generic_null_response, null));
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
                data.postValue(Resource.success(new Object()));
 | 
			
		||||
 | 
			
		||||
@ -9,28 +9,36 @@ public class Resource<T> {
 | 
			
		||||
    public final Status status;
 | 
			
		||||
    public final T data;
 | 
			
		||||
    public final String message;
 | 
			
		||||
    public final int resId;
 | 
			
		||||
 | 
			
		||||
    private Resource(@NonNull Status status,
 | 
			
		||||
                     @Nullable T data,
 | 
			
		||||
                     @Nullable String message) {
 | 
			
		||||
                     @Nullable String message,
 | 
			
		||||
                     int resId) {
 | 
			
		||||
        this.status = status;
 | 
			
		||||
        this.data = data;
 | 
			
		||||
        this.message = message;
 | 
			
		||||
        this.resId = resId;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @NonNull
 | 
			
		||||
    public static <T> Resource<T> success(@NonNull T data) {
 | 
			
		||||
        return new Resource<>(Status.SUCCESS, data, null);
 | 
			
		||||
        return new Resource<>(Status.SUCCESS, data, null, 0);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @NonNull
 | 
			
		||||
    public static <T> Resource<T> error(String msg, @Nullable T data) {
 | 
			
		||||
        return new Resource<>(Status.ERROR, data, msg);
 | 
			
		||||
        return new Resource<>(Status.ERROR, data, msg, 0);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @NonNull
 | 
			
		||||
    public static <T> Resource<T> error(int resId, @Nullable T data) {
 | 
			
		||||
        return new Resource<>(Status.ERROR, data, null, resId);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @NonNull
 | 
			
		||||
    public static <T> Resource<T> loading(@Nullable T data) {
 | 
			
		||||
        return new Resource<>(Status.LOADING, data, null);
 | 
			
		||||
        return new Resource<>(Status.LOADING, data, null, 0);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
 | 
			
		||||
@ -14,6 +14,7 @@ import java.util.Collections;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Locale;
 | 
			
		||||
 | 
			
		||||
import awais.instagrabber.R;
 | 
			
		||||
import awais.instagrabber.models.Resource;
 | 
			
		||||
import awais.instagrabber.repositories.responses.giphy.GiphyGif;
 | 
			
		||||
import awais.instagrabber.repositories.responses.giphy.GiphyGifResponse;
 | 
			
		||||
@ -70,7 +71,7 @@ public class GifPickerViewModel extends ViewModel {
 | 
			
		||||
                        Log.e(TAG, "onResponse: ", e);
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
                images.postValue(Resource.error("request was not successful and response error body was null", getCurrentImages()));
 | 
			
		||||
                images.postValue(Resource.error(R.string.generic_failed_request, getCurrentImages()));
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            @Override
 | 
			
		||||
@ -85,7 +86,7 @@ public class GifPickerViewModel extends ViewModel {
 | 
			
		||||
    private void parseResponse(final Response<GiphyGifResponse> response) {
 | 
			
		||||
        final GiphyGifResponse giphyGifResponse = response.body();
 | 
			
		||||
        if (giphyGifResponse == null) {
 | 
			
		||||
            images.postValue(Resource.error("Response body was null", getCurrentImages()));
 | 
			
		||||
            images.postValue(Resource.error(R.string.generic_null_response, getCurrentImages()));
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        final GiphyGifResults results = giphyGifResponse.getResults();
 | 
			
		||||
 | 
			
		||||
@ -20,6 +20,7 @@ import java.util.Objects;
 | 
			
		||||
import java.util.Set;
 | 
			
		||||
import java.util.stream.Collectors;
 | 
			
		||||
 | 
			
		||||
import awais.instagrabber.R;
 | 
			
		||||
import awais.instagrabber.fragments.UserSearchFragment;
 | 
			
		||||
import awais.instagrabber.models.Resource;
 | 
			
		||||
import awais.instagrabber.repositories.responses.User;
 | 
			
		||||
@ -205,7 +206,7 @@ public class UserSearchViewModel extends ViewModel {
 | 
			
		||||
                }
 | 
			
		||||
                final RankedRecipientsResponse rankedRecipientsResponse = response.body();
 | 
			
		||||
                if (rankedRecipientsResponse == null) {
 | 
			
		||||
                    recipients.postValue(Resource.error("Response is null!", getCachedRecipients()));
 | 
			
		||||
                    recipients.postValue(Resource.error(R.string.generic_null_response, getCachedRecipients()));
 | 
			
		||||
                    searchRequest = null;
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
@ -234,7 +235,7 @@ public class UserSearchViewModel extends ViewModel {
 | 
			
		||||
                }
 | 
			
		||||
                final UserSearchResponse userSearchResponse = response.body();
 | 
			
		||||
                if (userSearchResponse == null) {
 | 
			
		||||
                    recipients.postValue(Resource.error("Response is null!", getCachedRecipients()));
 | 
			
		||||
                    recipients.postValue(Resource.error(R.string.generic_null_response, getCachedRecipients()));
 | 
			
		||||
                    searchRequest = null;
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
@ -286,7 +287,7 @@ public class UserSearchViewModel extends ViewModel {
 | 
			
		||||
        final ResponseBody errorBody = response.errorBody();
 | 
			
		||||
        if (errorBody == null) {
 | 
			
		||||
            if (updateResource) {
 | 
			
		||||
                recipients.postValue(Resource.error("Request failed!", getCachedRecipients()));
 | 
			
		||||
                recipients.postValue(Resource.error(R.string.generic_failed_request, getCachedRecipients()));
 | 
			
		||||
            }
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@ -211,6 +211,7 @@
 | 
			
		||||
    <string name="dms_inbox_raven_media_suggested">Suggested</string>
 | 
			
		||||
    <string name="dms_inbox_raven_media_screenshot">Screenshotted</string>
 | 
			
		||||
    <string name="dms_inbox_raven_media_cant_deliver">Cannot deliver</string>
 | 
			
		||||
    <string name="dms_inbox_error_null_count">Unseen count response is null!</string>
 | 
			
		||||
    <string name="dms_thread_message_hint">Message...</string>
 | 
			
		||||
    <string name="dms_thread_audio_hint">Press and hold to record audio</string>
 | 
			
		||||
    <string name="dms_thread_updating">Updating...</string>
 | 
			
		||||
@ -219,6 +220,9 @@
 | 
			
		||||
    <string name="dms_action_leave_question">Leave this chat?</string>
 | 
			
		||||
    <string name="dms_action_kick">Kick</string>
 | 
			
		||||
    <string name="dms_left_users">Left users</string>
 | 
			
		||||
    <string name="dms_ERROR_INVALID_USER">Invalid user</string>
 | 
			
		||||
    <string name="dms_ERROR_VIDEO_TOO_LONG">Instagram does not allow uploading videos longer than 60 secs for DM.</string>
 | 
			
		||||
    <string name="dms_ERROR_AUDIO_TOO_LONG">Instagram does not allow uploading audio longer than 60 secs.</string>
 | 
			
		||||
    <string name="direct_download">Download directly</string>
 | 
			
		||||
    <string name="direct_download_desc">Downloads posts directly to the phone!</string>
 | 
			
		||||
    <string name="direct_download_loading">Fetching post(s)</string>
 | 
			
		||||
@ -494,4 +498,7 @@
 | 
			
		||||
    <string name="secs">secs</string>
 | 
			
		||||
    <string name="mins">mins</string>
 | 
			
		||||
    <string name="search_giphy">Search GIPHY</string>
 | 
			
		||||
    <string name="generic_null_response">Response is null!</string>
 | 
			
		||||
    <string name="generic_not_ok_response">Response status is not ok!</string>
 | 
			
		||||
    <string name="generic_failed_request">Request failed!</string>
 | 
			
		||||
</resources>
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user