diff --git a/app/src/main/java/gq/kirmanak/mealient/data/AppModule.kt b/app/src/main/java/gq/kirmanak/mealient/data/AppModule.kt deleted file mode 100644 index 294e03c..0000000 --- a/app/src/main/java/gq/kirmanak/mealient/data/AppModule.kt +++ /dev/null @@ -1,43 +0,0 @@ -package gq.kirmanak.mealient.data - -import android.content.Context -import android.content.SharedPreferences -import androidx.preference.PreferenceManager -import androidx.room.Room -import dagger.Module -import dagger.Provides -import dagger.hilt.InstallIn -import dagger.hilt.android.qualifiers.ApplicationContext -import dagger.hilt.components.SingletonComponent -import gq.kirmanak.mealient.data.impl.OkHttpBuilder -import kotlinx.serialization.json.Json -import okhttp3.OkHttpClient -import javax.inject.Singleton - -@Module -@InstallIn(SingletonComponent::class) -interface AppModule { - companion object { - @Provides - @Singleton - fun createDb(@ApplicationContext context: Context): AppDb = - Room.databaseBuilder(context, AppDb::class.java, "app.db").build() - - @Provides - @Singleton - fun createSharedPreferences(@ApplicationContext context: Context): SharedPreferences = - PreferenceManager.getDefaultSharedPreferences(context) - - @Provides - @Singleton - fun createOkHttp(okHttpBuilder: OkHttpBuilder): OkHttpClient = - okHttpBuilder.buildOkHttp() - - @Provides - @Singleton - fun createJson(): Json = Json { - coerceInputValues = true - ignoreUnknownKeys = true - } - } -} \ No newline at end of file diff --git a/app/src/main/java/gq/kirmanak/mealient/data/auth/impl/AuthDataSourceImpl.kt b/app/src/main/java/gq/kirmanak/mealient/data/auth/impl/AuthDataSourceImpl.kt index d342ca5..6cc7060 100644 --- a/app/src/main/java/gq/kirmanak/mealient/data/auth/impl/AuthDataSourceImpl.kt +++ b/app/src/main/java/gq/kirmanak/mealient/data/auth/impl/AuthDataSourceImpl.kt @@ -1,7 +1,6 @@ package gq.kirmanak.mealient.data.auth.impl import gq.kirmanak.mealient.data.auth.AuthDataSource -import gq.kirmanak.mealient.data.auth.AuthService import gq.kirmanak.mealient.data.auth.impl.AuthenticationError.* import gq.kirmanak.mealient.data.impl.ErrorDetail import gq.kirmanak.mealient.data.impl.RetrofitBuilder diff --git a/app/src/main/java/gq/kirmanak/mealient/data/auth/AuthService.kt b/app/src/main/java/gq/kirmanak/mealient/data/auth/impl/AuthService.kt similarity index 85% rename from app/src/main/java/gq/kirmanak/mealient/data/auth/AuthService.kt rename to app/src/main/java/gq/kirmanak/mealient/data/auth/impl/AuthService.kt index d4b4c97..e6b910c 100644 --- a/app/src/main/java/gq/kirmanak/mealient/data/auth/AuthService.kt +++ b/app/src/main/java/gq/kirmanak/mealient/data/auth/impl/AuthService.kt @@ -1,6 +1,5 @@ -package gq.kirmanak.mealient.data.auth +package gq.kirmanak.mealient.data.auth.impl -import gq.kirmanak.mealient.data.auth.impl.GetTokenResponse import retrofit2.Response import retrofit2.http.Field import retrofit2.http.FormUrlEncoded diff --git a/app/src/main/java/gq/kirmanak/mealient/di/AppModule.kt b/app/src/main/java/gq/kirmanak/mealient/di/AppModule.kt new file mode 100644 index 0000000..e3de864 --- /dev/null +++ b/app/src/main/java/gq/kirmanak/mealient/di/AppModule.kt @@ -0,0 +1,42 @@ +package gq.kirmanak.mealient.di + +import android.content.Context +import android.content.SharedPreferences +import androidx.preference.PreferenceManager +import androidx.room.Room +import dagger.Module +import dagger.Provides +import dagger.hilt.InstallIn +import dagger.hilt.android.qualifiers.ApplicationContext +import dagger.hilt.components.SingletonComponent +import gq.kirmanak.mealient.data.AppDb +import gq.kirmanak.mealient.data.impl.OkHttpBuilder +import kotlinx.serialization.json.Json +import okhttp3.OkHttpClient +import javax.inject.Singleton + +@Module +@InstallIn(SingletonComponent::class) +object AppModule { + @Provides + @Singleton + fun createDb(@ApplicationContext context: Context): AppDb = + Room.databaseBuilder(context, AppDb::class.java, "app.db").build() + + @Provides + @Singleton + fun createSharedPreferences(@ApplicationContext context: Context): SharedPreferences = + PreferenceManager.getDefaultSharedPreferences(context) + + @Provides + @Singleton + fun createOkHttp(okHttpBuilder: OkHttpBuilder): OkHttpClient = + okHttpBuilder.buildOkHttp() + + @Provides + @Singleton + fun createJson(): Json = Json { + coerceInputValues = true + ignoreUnknownKeys = true + } +} \ No newline at end of file diff --git a/app/src/main/java/gq/kirmanak/mealient/data/auth/AuthModule.kt b/app/src/main/java/gq/kirmanak/mealient/di/AuthModule.kt similarity index 81% rename from app/src/main/java/gq/kirmanak/mealient/data/auth/AuthModule.kt rename to app/src/main/java/gq/kirmanak/mealient/di/AuthModule.kt index 2465ff7..b90d3f4 100644 --- a/app/src/main/java/gq/kirmanak/mealient/data/auth/AuthModule.kt +++ b/app/src/main/java/gq/kirmanak/mealient/di/AuthModule.kt @@ -1,9 +1,12 @@ -package gq.kirmanak.mealient.data.auth +package gq.kirmanak.mealient.di import dagger.Binds import dagger.Module import dagger.hilt.InstallIn import dagger.hilt.components.SingletonComponent +import gq.kirmanak.mealient.data.auth.AuthDataSource +import gq.kirmanak.mealient.data.auth.AuthRepo +import gq.kirmanak.mealient.data.auth.AuthStorage import gq.kirmanak.mealient.data.auth.impl.AuthDataSourceImpl import gq.kirmanak.mealient.data.auth.impl.AuthRepoImpl import gq.kirmanak.mealient.data.auth.impl.AuthStorageImpl diff --git a/app/src/main/java/gq/kirmanak/mealient/ui/disclaimer/DisclaimerModule.kt b/app/src/main/java/gq/kirmanak/mealient/di/DisclaimerModule.kt similarity index 90% rename from app/src/main/java/gq/kirmanak/mealient/ui/disclaimer/DisclaimerModule.kt rename to app/src/main/java/gq/kirmanak/mealient/di/DisclaimerModule.kt index 93d0a64..8afeb85 100644 --- a/app/src/main/java/gq/kirmanak/mealient/ui/disclaimer/DisclaimerModule.kt +++ b/app/src/main/java/gq/kirmanak/mealient/di/DisclaimerModule.kt @@ -1,4 +1,4 @@ -package gq.kirmanak.mealient.ui.disclaimer +package gq.kirmanak.mealient.di import dagger.Binds import dagger.Module diff --git a/app/src/main/java/gq/kirmanak/mealient/data/recipes/RecipeModule.kt b/app/src/main/java/gq/kirmanak/mealient/di/RecipeModule.kt similarity index 91% rename from app/src/main/java/gq/kirmanak/mealient/data/recipes/RecipeModule.kt rename to app/src/main/java/gq/kirmanak/mealient/di/RecipeModule.kt index 395c7ea..2b83c14 100644 --- a/app/src/main/java/gq/kirmanak/mealient/data/recipes/RecipeModule.kt +++ b/app/src/main/java/gq/kirmanak/mealient/di/RecipeModule.kt @@ -1,4 +1,4 @@ -package gq.kirmanak.mealient.data.recipes +package gq.kirmanak.mealient.di import androidx.paging.ExperimentalPagingApi import androidx.paging.InvalidatingPagingSourceFactory @@ -7,6 +7,8 @@ import dagger.Module import dagger.Provides import dagger.hilt.InstallIn import dagger.hilt.components.SingletonComponent +import gq.kirmanak.mealient.data.recipes.RecipeImageLoader +import gq.kirmanak.mealient.data.recipes.RecipeRepo import gq.kirmanak.mealient.data.recipes.db.RecipeStorage import gq.kirmanak.mealient.data.recipes.db.RecipeStorageImpl import gq.kirmanak.mealient.data.recipes.impl.RecipeImageLoaderImpl diff --git a/app/src/main/java/gq/kirmanak/mealient/ui/UiModule.kt b/app/src/main/java/gq/kirmanak/mealient/di/UiModule.kt similarity index 89% rename from app/src/main/java/gq/kirmanak/mealient/ui/UiModule.kt rename to app/src/main/java/gq/kirmanak/mealient/di/UiModule.kt index 8cbb087..6d869fa 100644 --- a/app/src/main/java/gq/kirmanak/mealient/ui/UiModule.kt +++ b/app/src/main/java/gq/kirmanak/mealient/di/UiModule.kt @@ -1,4 +1,4 @@ -package gq.kirmanak.mealient.ui +package gq.kirmanak.mealient.di import com.squareup.picasso.Picasso import dagger.Binds @@ -6,6 +6,7 @@ import dagger.Module import dagger.Provides import dagger.hilt.InstallIn import dagger.hilt.components.SingletonComponent +import gq.kirmanak.mealient.ui.ImageLoader import gq.kirmanak.mealient.ui.picasso.ImageLoaderPicasso import gq.kirmanak.mealient.ui.picasso.PicassoBuilder import javax.inject.Singleton