package com.thebluealliance.androidclient.renderers; import com.thebluealliance.androidclient.datafeed.APICache; import com.thebluealliance.androidclient.datafeed.DatafeedModule; import android.content.res.Resources; import javax.inject.Singleton; import dagger.Module; import dagger.Provides; @Module(includes = DatafeedModule.class) public class RendererModule { @Provides @Singleton public MyTbaModelRenderer provideMyTbaModelRenderer( APICache cache, EventRenderer eventRenderer, TeamRenderer teamRenderer, MatchRenderer matchRenderer, DistrictRenderer districtRenderer) { return new MyTbaModelRenderer(cache, eventRenderer, teamRenderer, matchRenderer, districtRenderer); } @Provides @Singleton public EventRenderer provideEventRenderer(APICache cache) { return new EventRenderer(cache); } @Provides @Singleton public AwardRenderer provideAwardRenderer(APICache cache) { return new AwardRenderer(cache); } @Provides @Singleton public TeamRenderer provideTeamRenderer(APICache cache) { return new TeamRenderer(cache); } @Provides @Singleton public MatchRenderer provideMatchRenderer(APICache cache, Resources resources) { return new MatchRenderer(cache, resources); } @Provides @Singleton public DistrictRenderer provideDistrictRenderer(APICache cache) { return new DistrictRenderer(cache); } @Provides @Singleton public MediaRenderer provideMediaRenderer() { return new MediaRenderer(); } @Provides @Singleton public DistrictPointBreakdownRenderer provideDistrictPointBreakdownRenderer() { return new DistrictPointBreakdownRenderer(); } @Provides @Singleton public DistrictTeamRenderer provideDistrictTeamRenderer() { return new DistrictTeamRenderer(); } @Provides @Singleton public ModelRendererSupplier provideModelRendererSupplier( AwardRenderer awardRenderer, DistrictPointBreakdownRenderer districtPointBreakdownRenderer, DistrictTeamRenderer districtTeamRenderer, EventRenderer eventRenderer, TeamRenderer teamRenderer, MatchRenderer matchRenderer, MediaRenderer mediaRenderer, DistrictRenderer districtRenderer) { return new ModelRendererSupplier( awardRenderer, districtPointBreakdownRenderer, districtTeamRenderer, districtRenderer, eventRenderer, matchRenderer, mediaRenderer, teamRenderer); } }