Skip to content

Hilt example - Part 2 #111

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 35 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
4851fbf
hilt library
fedeturazzini Apr 22, 2022
fb0413d
hilt base imple
fedeturazzini Apr 22, 2022
660df80
strings for hilt
fedeturazzini Apr 22, 2022
17e9a9e
adding hilt activity for example
fedeturazzini Apr 22, 2022
006ab63
koin folder
fedeturazzini Apr 22, 2022
e948079
imple recipe part 1
fedeturazzini Apr 25, 2022
09bc105
Cleaning code
fedeturazzini Apr 25, 2022
73a3e21
cleaning
fedeturazzini Apr 25, 2022
f4839ff
clean
fedeturazzini Apr 25, 2022
7738e25
bye kapt verbose
fedeturazzini Apr 25, 2022
927c10c
cleaning imports
fedeturazzini Apr 25, 2022
f1581d2
code smell
fedeturazzini Apr 25, 2022
adfca45
code smell
fedeturazzini Apr 25, 2022
dd9983f
code smell :)
fedeturazzini Apr 25, 2022
8953937
+ smell code fixes
fedeturazzini Apr 25, 2022
76dcbac
code rev Juli
fedeturazzini Apr 25, 2022
59234a2
code rev juli
fedeturazzini Apr 25, 2022
e727425
code rev tomi
fedeturazzini Apr 25, 2022
7f4bca2
code rev tomi
fedeturazzini Apr 25, 2022
3204004
code rev tomi
fedeturazzini Apr 25, 2022
21226ce
ordered in lexicographic order
fedeturazzini Apr 25, 2022
189be0d
clean
fedeturazzini Apr 25, 2022
5eb0a74
code rev tomi
fedeturazzini Apr 25, 2022
25036ae
code rev tomi
fedeturazzini Apr 25, 2022
86dfc0d
code rev tomi
fedeturazzini Apr 25, 2022
dfea7cc
code rev juan
fedeturazzini Apr 25, 2022
0ab2c14
cod rev
fedeturazzini Apr 26, 2022
b2852a4
clean spaces
fedeturazzini Apr 26, 2022
37586d5
changes
fedeturazzini Apr 26, 2022
7087878
version compose
fedeturazzini Apr 29, 2022
99e399a
Ui compose imple
fedeturazzini Apr 29, 2022
1a6c48a
fix imports
fedeturazzini Apr 29, 2022
19048fa
fixes
fedeturazzini Apr 29, 2022
0dfa982
clean
fedeturazzini Apr 29, 2022
8d64607
fix imports
fedeturazzini Apr 29, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
code rev tomi
  • Loading branch information
fedeturazzini committed Apr 25, 2022
commit e727425069077fc5f09b31b9e836f30d00447027
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package com.rocketinsights.android.di.hilt

import com.google.gson.GsonBuilder
import com.rocketinsights.android.network.RecipeService
import com.rocketinsights.android.network.models.recipe_hilt.RecipeDtoMapper
import com.rocketinsights.android.models.recipe_hilt.RecipeDtoMapper
import dagger.Module
import dagger.Provides
import dagger.hilt.InstallIn
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.rocketinsights.android.di.hilt

import com.rocketinsights.android.network.RecipeService
import com.rocketinsights.android.network.models.recipe_hilt.RecipeDtoMapper
import com.rocketinsights.android.models.recipe_hilt.RecipeDtoMapper
import com.rocketinsights.android.repos.RecipeRepository
import com.rocketinsights.android.repos.RecipeRepositoryImplementation
import dagger.Module
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package com.rocketinsights.android.models.recipe_hilt

data class Recipe(
val id: Int,
val title: String,
val publisher: String,
val featuredImage: String,
val rating: Int = 0,
val sourceUrl: String,
val ingredients: List<String> = listOf(),
val dateAdded: String,
val dateUpdated: String
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package com.rocketinsights.android.models.recipe_hilt

import com.google.gson.annotations.SerializedName

data class RecipeDto(
var pk: Int,
var title: String,
var publisher: String,
@SerializedName("featured_image")
var featuredImage: String,
var rating: Int = 0,
@SerializedName("source_url")
var sourceUrl: String,
var ingredients: List<String> = emptyList(),
@SerializedName("date_added")
var dateAdded: String,
@SerializedName("date_updated")
var dateUpdated: String,
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
package com.rocketinsights.android.models.recipe_hilt

class RecipeDtoMapper {
fun mapToDomainModel(model: RecipeDto): Recipe {
return Recipe(
id = model.pk,
title = model.title,
featuredImage = model.featuredImage,
rating = model.rating,
publisher = model.publisher,
sourceUrl = model.sourceUrl,
ingredients = model.ingredients,
dateAdded = model.dateAdded,
dateUpdated = model.dateUpdated,
)
}

private fun mapFromDomainModel(domainModel: Recipe): RecipeDto {
return RecipeDto(
pk = domainModel.id,
title = domainModel.title,
featuredImage = domainModel.featuredImage,
rating = domainModel.rating,
publisher = domainModel.publisher,
sourceUrl = domainModel.sourceUrl,
ingredients = domainModel.ingredients,
dateAdded = domainModel.dateAdded,
dateUpdated = domainModel.dateUpdated,
)
}

fun toDomainList(initial: List<RecipeDto>): List<Recipe> = initial.map { mapToDomainModel(it) }

fun fromDomainList(initial: List<Recipe>): List<RecipeDto> =
initial.map { mapFromDomainModel(it) }
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.rocketinsights.android.network.hiltexample

import com.rocketinsights.android.network.models.recipe_hilt.RecipeDto
import com.rocketinsights.android.models.recipe_hilt.RecipeDto

data class RecipeSearchResponse(
var count: Int,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.rocketinsights.android.network

import com.rocketinsights.android.network.hiltexample.RecipeSearchResponse
import com.rocketinsights.android.network.models.recipe_hilt.RecipeDto
import com.rocketinsights.android.models.recipe_hilt.RecipeDto
import retrofit2.http.GET
import retrofit2.http.Header
import retrofit2.http.Query
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.rocketinsights.android.repos

import com.rocketinsights.android.network.models.recipe_hilt.Recipe
import com.rocketinsights.android.models.recipe_hilt.Recipe

interface RecipeRepository {
suspend fun search(token: String, page: Int, query: String): List<Recipe>?
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package com.rocketinsights.android.repos

import com.rocketinsights.android.network.RecipeService
import com.rocketinsights.android.network.models.recipe_hilt.Recipe
import com.rocketinsights.android.network.models.recipe_hilt.RecipeDtoMapper
import com.rocketinsights.android.models.recipe_hilt.Recipe
import com.rocketinsights.android.models.recipe_hilt.RecipeDtoMapper

class RecipeRepositoryImplementation(
private val recipeService: RecipeService,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.rocketinsights.android.network.models.recipe_hilt.Recipe
import com.rocketinsights.android.models.recipe_hilt.Recipe
import com.rocketinsights.android.repos.RecipeRepository
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.launch
Expand Down