Hi i am using retrofit and rxjava to make a simple request and get the response back but it doesnt seem to be making the request itself or getting the response back?
This is my retrofit code:
public class Controller
public Single<List<ListItems>> getItems() {
return apiCall().getItems();
}
private ServiceCallsApiCall() {
OkHttpClient okHttpClient = new OkHttpClient().newBuilder().addInterceptor(interceptor).build();
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.client(okHttpClient)
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create()).build();
ServiceCallsApiCall serviceCalls= retrofit.create(ServiceCallsApiCall.class);
return foodHygieneServiceCalls;
}
my ServiceCallsApiCall class
@GET("Authorities/basic")
Single<List<ListItems>> getItems();
Here is my Rxjava part of my code that subscribes and observes this
public void getItems() {
new Controller().getItems()
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(new SingleObserver<List<ListItems>>() {
@Override
public void onSubscribe(Disposable d) {
Log.d("","onSubscribe");
}
@Override
public void onSuccess(List<ListItems> items) {
viewPresenterCallBacks.updateView(items);
}
@Override
public void onError(Throwable e) {
Log.d("","onError" + e.getMessage());
}
});
}
None of the onSuccess or onError gets called