package xyz.adjutor.aniki.presentation import com.google.gson.Gson import com.google.gson.GsonBuilder import retrofit2.Retrofit import retrofit2.converter.gson.GsonConverterFactory import xyz.adjutor.aniki.data.anime.AnimeApi import xyz.adjutor.aniki.data.anime.SearchAnimeApi import xyz.adjutor.aniki.data.anime.TopAnimeApi import xyz.adjutor.aniki.data.manga.MangaApi import xyz.adjutor.aniki.data.manga.SearchMangaApi import xyz.adjutor.aniki.data.manga.TopMangaApi class Singletons { companion object { val gson: Gson = GsonBuilder() .setLenient() .create()!! private const val BASE_URL = "https://api.jikan.moe/" val topMangaApi: TopMangaApi = Retrofit.Builder() .baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create(gson)) .build() .create(TopMangaApi::class.java) val searchMangaApi: SearchMangaApi = Retrofit.Builder() .baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create(gson)) .build() .create(SearchMangaApi::class.java) val mangaApi: MangaApi = Retrofit.Builder() .baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create(gson)) .build() .create(MangaApi::class.java) val topAnimeApi: TopAnimeApi = Retrofit.Builder() .baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create(gson)) .build() .create(TopAnimeApi::class.java) val searchAnimeApi: SearchAnimeApi = Retrofit.Builder() .baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create(gson)) .build() .create(SearchAnimeApi::class.java) val animeApi: AnimeApi = Retrofit.Builder() .baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create(gson)) .build() .create(AnimeApi::class.java) } }