trello-archive/RxLifecycle

In Kotlin on whether generics can be used this way

Closed this issue · 1 comments

View_Kotlin:

    override fun bindLifecycle(): LifecycleTransformer<*> {
        return this.bindUntilEvent<Any?>(FragmentEvent.DESTROY_VIEW)
    }

Presenter_Kotlin:

    override fun getAdvertisement() {
        startRemoteDataSource?.getAdvertisment(view.bindLifecycle(), object : HttpRequestCallBack<Advertisement>() {

            override fun onStart(disposable: Disposable) {}

            override fun onSuccess(advertisement: Advertisement) {
                view.getAdvertisementSucceed(advertisement)
            }

            override fun onFail(e: ApiException) {
                view.getAdvertisementError(e.code, e.msg)
                ExceptionUtils.printException(e, e.code, e.msg)
            }

            fun tokenOverdue(e: ApiException) {
                e.printStackTrace()
            }
        })
    }

Model_Kotlin:

   fun getAdvertisment(provider: LifecycleTransformer<*>, callBack: ICallBack<Advertisement>) {
        HttpRxObservable.getObservable(ApiFactory.Instance.getStartApi()?.getFirstScreenAdvertisment(),
                provider).subscribe(SimpleHttpRxObservable(callBack))
    }

BseModel_Java

    public static <T> Observable getObservable(Observable<HttpResponse<T>> apiObservable, LifecycleTransformer lifecycle) {
        Observable observable;
        if (lifecycle != null) {
            observable = apiObservable.map(new ServerResultFunction()).compose(lifecycle).onErrorResumeNext(new HttpResultFunction()).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread());
        } else {
            observable = getObservable(apiObservable);
        }

        return observable;
    }

And the most confusing thing for me is, can I use Any? on the View layer As bindUntilEvent letter amount generic, I should still use the data Advertisement I requested

dlew commented

GitHub issues is for posting bugs or feature requests, not for getting help using the library. I suggest going to stackoverflow.com if you want help instead.