Merge retrofit and retrofit services declarations in ApiModule

This commit is contained in:
Shinokuni 2021-08-14 19:46:54 +02:00
parent 137e591573
commit 1533f67de8

@ -42,18 +42,14 @@ val apiModule = module {
factory { params -> FreshRSSDataSource(get(parameters = { params })) } factory { params -> FreshRSSDataSource(get(parameters = { params })) }
factory { params -> factory { (credentials: Credentials) ->
get<Retrofit>(named("freshrssRetrofit"), parameters = { params })
.create(FreshRSSService::class.java)
}
factory(named("freshrssRetrofit")) { (credentials: Credentials) ->
Retrofit.Builder() Retrofit.Builder()
.baseUrl(credentials.url) .baseUrl(credentials.url)
.addCallAdapterFactory(RxJava2CallAdapterFactory.create()) .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.client(get()) .client(get())
.addConverterFactory(MoshiConverterFactory.create(get(named("freshrssMoshi")))) .addConverterFactory(MoshiConverterFactory.create(get(named("freshrssMoshi"))))
.build() .build()
.create(FreshRSSService::class.java)
} }
single(named("freshrssMoshi")) { single(named("freshrssMoshi")) {
@ -72,18 +68,14 @@ val apiModule = module {
factory { params -> NextNewsDataSource(get(parameters = { params })) } factory { params -> NextNewsDataSource(get(parameters = { params })) }
factory { params -> factory { (credentials: Credentials) ->
get<Retrofit>(named("nextcloudNewsRetrofit"), parameters = { params })
.create(NextNewsService::class.java)
}
factory(named("nextcloudNewsRetrofit")) { (credentials: Credentials) ->
Retrofit.Builder() Retrofit.Builder()
.baseUrl(credentials.url) .baseUrl(credentials.url)
.addCallAdapterFactory(RxJava2CallAdapterFactory.create()) .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.client(get()) .client(get())
.addConverterFactory(MoshiConverterFactory.create(get(named("nextcloudNewsMoshi")))) .addConverterFactory(MoshiConverterFactory.create(get(named("nextcloudNewsMoshi"))))
.build() .build()
.create(NextNewsService::class.java)
} }
single(named("nextcloudNewsMoshi")) { single(named("nextcloudNewsMoshi")) {