// Path: app/src/main/java/com/tobi/movies/ImageLoader.java
// public class ImageLoader {
// 
//     public void loadWebImageInto(Uri imageUrl, ImageView imageView) {
//         Glide
//                 .with(imageView.getContext())
//                 .load(imageUrl)
//                 .crossFade()
//                 .into(imageView);
//     }
// }
// 
// Path: app/src/main/java/com/tobi/movies/MovieApplication.java
// public class MovieApplication extends Application {
// 
//     private PopularMoviesComponent popularMoviesComponent;
//     private MovieDetailsComponent movieDetailsComponent;
// 
//     @Override
//     public void onCreate() {
//         super.onCreate();
//         ApplicationComponent applicationComponent = applicationComponent();
//         popularMoviesComponent = popularMoviesComponent(applicationComponent);
//         movieDetailsComponent = movieDetailsComponent(applicationComponent);
//     }
// 
//     protected ApplicationComponent applicationComponent() {
//         return DaggerApplicationComponent.create();
//     }
// 
//     protected MovieDetailsComponent movieDetailsComponent(ApplicationComponent applicationComponent) {
//         return DaggerMovieDetailsComponent.builder()
//                 .applicationComponent(applicationComponent)
//                 .build();
//     }
// 
//     protected PopularMoviesComponent popularMoviesComponent(ApplicationComponent applicationComponent) {
//         return DaggerPopularMoviesComponent.builder()
//                 .applicationComponent(applicationComponent)
//                 .build();
//     }
// 
//     public PopularMoviesComponent getPopularMoviesComponent() {
//         return popularMoviesComponent;
//     }
// 
//     public MovieDetailsComponent getMovieDetailsComponent() {
//         return movieDetailsComponent;
//     }
// }
// 
// Path: app/src/main/java/com/tobi/movies/misc/Threading.java
// public enum Threading {
//     SUBSCRIBER,
//     OBSERVER
// }


import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.tobi.movies.ImageLoader;
import com.tobi.movies.MovieApplication;
import com.tobi.movies.R;
import com.tobi.movies.misc.Threading;
import javax.inject.Inject;
import java.util.Map;
import butterknife.BindView;
import butterknife.ButterKnife;
import rx.Scheduler;
package com.tobi.movies.posterdetails;





public class MovieDetailsActivity extends Activity implements MovieDetailsMVP.View {

    private static final String EXTRA_MOVIE_ID = "extra_movie_id";
    private MovieDetailsUseCase movieDetailsUseCase;

    public static Intent createIntentFor(long movieId, Context activity) {
        Intent intent = new Intent(activity, MovieDetailsActivity.class);
        intent.putExtra(EXTRA_MOVIE_ID, movieId);

        return intent;
    }

    @BindView(R.id.movieTitle)
    TextView movieTitle;

    @BindView(R.id.posterImage)
    ImageView moviePoster;

    @BindView(R.id.movieOverview)
    TextView movieOverview;

    @Inject
    ImageLoader imageLoader;

    @Inject
    Map<Threading, Scheduler> schedulerMap;

    @Inject
    MovieDetailsRepository movieDetailsRepository;

    private MovieDetailsPresenter presenter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_movie_details);
        ButterKnife.bind(this);
// Path: app/src/main/java/com/tobi/movies/ImageLoader.java
// public class ImageLoader {
// 
//     public void loadWebImageInto(Uri imageUrl, ImageView imageView) {
//         Glide
//                 .with(imageView.getContext())
//                 .load(imageUrl)
//                 .crossFade()
//                 .into(imageView);
//     }
// }
// 
// Path: app/src/main/java/com/tobi/movies/MovieApplication.java
// public class MovieApplication extends Application {
// 
//     private PopularMoviesComponent popularMoviesComponent;
//     private MovieDetailsComponent movieDetailsComponent;
// 
//     @Override
//     public void onCreate() {
//         super.onCreate();
//         ApplicationComponent applicationComponent = applicationComponent();
//         popularMoviesComponent = popularMoviesComponent(applicationComponent);
//         movieDetailsComponent = movieDetailsComponent(applicationComponent);
//     }
// 
//     protected ApplicationComponent applicationComponent() {
//         return DaggerApplicationComponent.create();
//     }
// 
//     protected MovieDetailsComponent movieDetailsComponent(ApplicationComponent applicationComponent) {
//         return DaggerMovieDetailsComponent.builder()
//                 .applicationComponent(applicationComponent)
//                 .build();
//     }
// 
//     protected PopularMoviesComponent popularMoviesComponent(ApplicationComponent applicationComponent) {
//         return DaggerPopularMoviesComponent.builder()
//                 .applicationComponent(applicationComponent)
//                 .build();
//     }
// 
//     public PopularMoviesComponent getPopularMoviesComponent() {
//         return popularMoviesComponent;
//     }
// 
//     public MovieDetailsComponent getMovieDetailsComponent() {
//         return movieDetailsComponent;
//     }
// }
// 
// Path: app/src/main/java/com/tobi/movies/misc/Threading.java
// public enum Threading {
//     SUBSCRIBER,
//     OBSERVER
// }


// Path: app/src/main/java/com/tobi/movies/posterdetails/MovieDetailsActivity.java
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.tobi.movies.ImageLoader;
import com.tobi.movies.MovieApplication;
import com.tobi.movies.R;
import com.tobi.movies.misc.Threading;
import javax.inject.Inject;
import java.util.Map;
import butterknife.BindView;
import butterknife.ButterKnife;
import rx.Scheduler;

package com.tobi.movies.posterdetails;





public class MovieDetailsActivity extends Activity implements MovieDetailsMVP.View {

    private static final String EXTRA_MOVIE_ID = "extra_movie_id";
    private MovieDetailsUseCase movieDetailsUseCase;

    public static Intent createIntentFor(long movieId, Context activity) {
        Intent intent = new Intent(activity, MovieDetailsActivity.class);
        intent.putExtra(EXTRA_MOVIE_ID, movieId);

        return intent;
    }

    @BindView(R.id.movieTitle)
    TextView movieTitle;

    @BindView(R.id.posterImage)
    ImageView moviePoster;

    @BindView(R.id.movieOverview)
    TextView movieOverview;

    @Inject
    ImageLoader imageLoader;

    @Inject
    Map<Threading, Scheduler> schedulerMap;

    @Inject
    MovieDetailsRepository movieDetailsRepository;

    private MovieDetailsPresenter presenter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_movie_details);
        ButterKnife.bind(this);
        MovieApplication application = (MovieApplication) getApplication();