// Path: base/src/main/java/com/tobi/movies/Converter.java
// public interface Converter<T, R> {
// 
//     R convert(T input);
// }
// 
// Path: app/src/main/java/com/tobi/movies/misc/Threading.java
// public enum Threading {
//     SUBSCRIBER,
//     OBSERVER
// }


import android.support.annotation.NonNull;
import com.tobi.movies.Converter;
import com.tobi.movies.misc.Threading;
import javax.inject.Inject;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import rx.Observable;
import rx.Scheduler;
import rx.functions.Func1;
package com.tobi.movies.popularstream;





public class PopularStreamRepository {

    private final PopularStreamApiDatasource popularStreamApiDatasource;
    private final Scheduler subscribeScheduler;
    private final Scheduler observeScheduler;
    private final Converter<ApiMoviePoster, MoviePoster> posterConverter;

    @Inject
    public PopularStreamRepository(PopularStreamApiDatasource popularStreamApiDatasource,
// Path: base/src/main/java/com/tobi/movies/Converter.java
// public interface Converter<T, R> {
// 
//     R convert(T input);
// }
// 
// Path: app/src/main/java/com/tobi/movies/misc/Threading.java
// public enum Threading {
//     SUBSCRIBER,
//     OBSERVER
// }


// Path: app/src/main/java/com/tobi/movies/popularstream/PopularStreamRepository.java
import android.support.annotation.NonNull;
import com.tobi.movies.Converter;
import com.tobi.movies.misc.Threading;
import javax.inject.Inject;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import rx.Observable;
import rx.Scheduler;
import rx.functions.Func1;

package com.tobi.movies.popularstream;





public class PopularStreamRepository {

    private final PopularStreamApiDatasource popularStreamApiDatasource;
    private final Scheduler subscribeScheduler;
    private final Scheduler observeScheduler;
    private final Converter<ApiMoviePoster, MoviePoster> posterConverter;

    @Inject
    public PopularStreamRepository(PopularStreamApiDatasource popularStreamApiDatasource,
                                   Map<Threading, Scheduler> schedulerMap,