package com.betaseries.betaseries.authentication;
import android.content.Context;
import com.betaseries.betaseries.BuildConfig;
import com.betaseries.betaseries.authentication.webservice.AuthenticationService;
import javax.inject.Singleton;
import dagger.Module;
import dagger.Provides;
import retrofit.RestAdapter;
import retrofit.android.AndroidLog;
/**
* Created by florentchampigny on 02/08/15.
*/
@Module
public class AuthenticationModule {
@Singleton
@Provides
public AuthenticationService provideAuthentificationService(){
return new RestAdapter.Builder()
.setEndpoint(BuildConfig.URL_BETASERIES)
.setLogLevel(RestAdapter.LogLevel.FULL)
.setLog(new AndroidLog("retrofit"))
.setRequestInterceptor(request -> {
request.addHeader("X-BetaSeries-Key", BuildConfig.API_KEY);
request.addHeader("X-BetaSeries-Version", "2.4");
request.addHeader("Accept", "application/json");
})
.build()
.create(AuthenticationService.class);
}
@Singleton
@Provides
public AuthenticationManager provideAuthentificationManager(AuthenticationService authenticationService, Context context){
return new AuthenticationManager(authenticationService, context);
}
}