|
@@ -0,0 +1,32 @@
|
|
|
+package com.livelike.flickersearchlibrary.di
|
|
|
+
|
|
|
+import com.livelike.flickersearchlibrary.api.FlickrApi
|
|
|
+import com.livelike.flickersearchlibrary.api.utils.BASE_URL
|
|
|
+import com.livelike.flickersearchlibrary.service.logic.FlickrServiceLogic
|
|
|
+import org.koin.dsl.module
|
|
|
+import retrofit2.Retrofit
|
|
|
+import retrofit2.converter.moshi.MoshiConverterFactory
|
|
|
+
|
|
|
+/**
|
|
|
+ * Koin module that declares dependencies required by Flickr API.
|
|
|
+ */
|
|
|
+internal val flickrApiModule = module {
|
|
|
+
|
|
|
+ single {
|
|
|
+ val retrofit = Retrofit.Builder()
|
|
|
+ .baseUrl(BASE_URL)
|
|
|
+ .addConverterFactory(MoshiConverterFactory.create())
|
|
|
+ .build()
|
|
|
+ retrofit.create(FlickrApi::class.java)
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * Koin module that declares dependencies required by Flickr service features.
|
|
|
+ */
|
|
|
+val flickrModule = module {
|
|
|
+
|
|
|
+ single { FlickrServiceLogic(get()) }
|
|
|
+
|
|
|
+}
|