/** * Delete contact call * * @param contact */ private void deleteContact(Contact contact) { apiService .deleteContact(contact.getId()) .observeOn(AndroidSchedulers.mainThread()) .doOnRequest(aLong -> showLoader("Deleting contact...")) .doOnNext( contact1 -> { hideLoader(); Message.show(getContext(), "Contact Deleted"); activity.supportFinishAfterTransition(); }) .doOnError(throwable -> hideLoader()) .subscribe( new RetroSubscriber<Contact>() { @Override public void onRetrofitError(RetrofitError error) { super.onRetrofitError(error); String message; if (error.getKind() == RetrofitError.Kind.NETWORK) message = "Network error"; else message = "Something went wrong"; Message.show(getContext(), message); } }); }
/** * Update contact call * * @param contact */ private void updateContact(Contact contact) { apiService .updateContact(contact.getId(), contact.getAsMap()) .observeOn(AndroidSchedulers.mainThread()) .doOnNext(contact1 -> Snackbar.make(this, "Profile Updated", Snackbar.LENGTH_SHORT).show()) .doOnError(throwable -> showRetryMessage(contact)) .subscribe( new RetroSubscriber<Contact>() { @Override public void onNetworkError(RetrofitError error) { super.onNetworkError(error); Message.show(getContext(), Constants.ERROR_NETWORK); } }); }