Created
December 30, 2016 09:36
-
-
Save mondoktamas/9ccbaf7c36c10a1efbb121d2acfe24ce to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.booklava.booklava.domain.utils; | |
import android.content.Context; | |
import com.booklava.booklava.data.network.BookApiService; | |
import com.booklava.booklava.data.network.BookmarkApiService; | |
import com.booklava.booklava.data.network.CartApiService; | |
import com.booklava.booklava.data.network.CategoryApiService; | |
import com.booklava.booklava.data.network.CountryApiService; | |
import com.booklava.booklava.data.network.CreditApiService; | |
import com.booklava.booklava.data.network.FAQApiService; | |
import com.booklava.booklava.data.network.FeedbackApiService; | |
import com.booklava.booklava.data.network.LibraryApiService; | |
import com.booklava.booklava.data.network.ListeningTimeApiService; | |
import com.booklava.booklava.data.network.SearchApiService; | |
import com.booklava.booklava.data.network.SocialApiService; | |
import com.booklava.booklava.data.network.SupportRequestApiService; | |
import com.booklava.booklava.data.network.SyncApiService; | |
import com.booklava.booklava.data.network.UserApiService; | |
import com.booklava.booklava.data.network.WishlistApiService; | |
import com.booklava.booklava.data.network.config.BooklavaNetworkConfig; | |
import com.booklava.booklava.data.network.config.LinkedInNetworkConfig; | |
import com.booklava.booklava.data.repository.BookRepository; | |
import com.booklava.booklava.data.repository.BookmarkRepository; | |
import com.booklava.booklava.data.repository.CartRepository; | |
import com.booklava.booklava.data.repository.CategoriesRepository; | |
import com.booklava.booklava.data.repository.CountryRepository; | |
import com.booklava.booklava.data.repository.CreditRepository; | |
import com.booklava.booklava.data.repository.FAQRepository; | |
import com.booklava.booklava.data.repository.FeedbackRepository; | |
import com.booklava.booklava.data.repository.LibraryRepository; | |
import com.booklava.booklava.data.repository.ListeningTimeRepository; | |
import com.booklava.booklava.data.repository.RepositoryFactory; | |
import com.booklava.booklava.data.repository.SearchRepository; | |
import com.booklava.booklava.data.repository.SocialAuthRepository; | |
import com.booklava.booklava.data.repository.SupportRepository; | |
import com.booklava.booklava.data.repository.SyncRepository; | |
import com.booklava.booklava.data.repository.UserRepository; | |
import com.booklava.booklava.data.repository.WishlistRepository; | |
import com.booklava.core.data.network.ServiceGenerator; | |
public class Injection { | |
static final ServiceGenerator sServiceGenerator; | |
static { | |
sServiceGenerator = ServiceGenerator.getInstance(); | |
} | |
public static synchronized UserRepository provideUserRepository(final Context context) { | |
return RepositoryFactory.getUserRepository( | |
sServiceGenerator.createServiceFromConfiguration(UserApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static synchronized CategoriesRepository provideCategoryRepository(final Context context) { | |
return RepositoryFactory.getCategoryRepository( | |
sServiceGenerator.createServiceFromConfiguration(CategoryApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static synchronized CountryRepository provideCountryRepository(final Context context) { | |
return RepositoryFactory.getCountryRepository( | |
sServiceGenerator.createServiceFromConfiguration(CountryApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static synchronized BookRepository provideBookRepository(final Context context) { | |
return RepositoryFactory.getBookRepository( | |
sServiceGenerator.createServiceFromConfiguration(BookApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static synchronized LibraryRepository provideLibraryRepository(final Context context) { | |
return RepositoryFactory.getLibraryRepository( | |
sServiceGenerator.createServiceFromConfiguration(LibraryApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static synchronized WishlistRepository provideWishlistRepository(final Context context) { | |
return RepositoryFactory.getWishlistRepository( | |
sServiceGenerator.createServiceFromConfiguration(WishlistApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static synchronized CartRepository provideCartRepository(final Context context){ | |
return RepositoryFactory.getCartRepository( | |
sServiceGenerator.createServiceFromConfiguration(CartApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static synchronized SocialAuthRepository provideSocialAuthRepository() { | |
return RepositoryFactory.getSocialAuthRepo( | |
sServiceGenerator.createServiceFromConfiguration(SocialApiService.class, | |
LinkedInNetworkConfig.getInstance())); | |
} | |
public static FeedbackRepository provideFeedbackRepository(final Context context) { | |
return RepositoryFactory.getFeedbackRepository( | |
sServiceGenerator.createServiceFromConfiguration(FeedbackApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static SearchRepository provideSearchRepository(final Context context) { | |
return RepositoryFactory.getSearchRepository( | |
sServiceGenerator.createServiceFromConfiguration(SearchApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static ListeningTimeRepository provideListeningTimeRepository(final Context context){ | |
return RepositoryFactory.getListeningTimeRepository( | |
sServiceGenerator.createServiceFromConfiguration(ListeningTimeApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static SyncRepository provideSyncRepository(final Context context) { | |
return RepositoryFactory.getSyncRepository( | |
sServiceGenerator.createServiceFromConfiguration(SyncApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static CreditRepository provideCreditRepository(final Context context) { | |
return RepositoryFactory.getCreditRepository( | |
sServiceGenerator.createServiceFromConfiguration(CreditApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static BookmarkRepository provideBookmarkRepository(final Context context) { | |
return RepositoryFactory.getBookmarkRepository( | |
sServiceGenerator.createServiceFromConfiguration(BookmarkApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static FAQRepository provideFaqRepository(final Context context) { | |
return RepositoryFactory.getFaqRepository(sServiceGenerator.createServiceFromConfiguration(FAQApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
public static SupportRepository provideSupportRepository(final Context context) { | |
return RepositoryFactory.getSupportRepository(sServiceGenerator.createServiceFromConfiguration(SupportRequestApiService.class, | |
BooklavaNetworkConfig.getInstance(context))); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment