package com.kickstarter.libs;
import android.support.annotation.NonNull;
import com.kickstarter.services.WebClientType;
import com.kickstarter.services.apiresponses.InternalBuildEnvelope;
import com.kickstarter.viewmodels.DiscoveryViewModel;
import rx.android.schedulers.AndroidSchedulers;
import timber.log.Timber;
public interface BuildCheck {
void bind(final @NonNull DiscoveryViewModel viewModel, final @NonNull WebClientType client);
BuildCheck DEFAULT = (viewModel, client) -> client.pingBeta()
.filter(InternalBuildEnvelope::newerBuildAvailable)
.compose(viewModel.bindToLifecycle())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(viewModel.inputs::newerBuildIsAvailable, e -> Timber.e(e.toString()));
}