Return V1 version response from V1 data source
This commit is contained in:
@@ -1,7 +1,5 @@
|
|||||||
package gq.kirmanak.mealient.data.baseurl
|
package gq.kirmanak.mealient.data.baseurl
|
||||||
|
|
||||||
data class VersionInfo(
|
data class VersionInfo(
|
||||||
val production: Boolean,
|
|
||||||
val version: String,
|
val version: String,
|
||||||
val demoStatus: Boolean,
|
|
||||||
)
|
)
|
||||||
@@ -7,6 +7,7 @@ import gq.kirmanak.mealient.database.recipe.entity.RecipeInstructionEntity
|
|||||||
import gq.kirmanak.mealient.database.recipe.entity.RecipeSummaryEntity
|
import gq.kirmanak.mealient.database.recipe.entity.RecipeSummaryEntity
|
||||||
import gq.kirmanak.mealient.datasource.models.*
|
import gq.kirmanak.mealient.datasource.models.*
|
||||||
import gq.kirmanak.mealient.datasource.v1.models.GetRecipeSummaryResponseV1
|
import gq.kirmanak.mealient.datasource.v1.models.GetRecipeSummaryResponseV1
|
||||||
|
import gq.kirmanak.mealient.datasource.v1.models.VersionResponseV1
|
||||||
import gq.kirmanak.mealient.datastore.recipe.AddRecipeDraft
|
import gq.kirmanak.mealient.datastore.recipe.AddRecipeDraft
|
||||||
|
|
||||||
fun GetRecipeResponse.toRecipeEntity() = RecipeEntity(
|
fun GetRecipeResponse.toRecipeEntity() = RecipeEntity(
|
||||||
@@ -43,7 +44,9 @@ fun GetRecipeSummaryResponseV1.recipeEntity() = RecipeSummaryEntity(
|
|||||||
dateUpdated = dateUpdated,
|
dateUpdated = dateUpdated,
|
||||||
)
|
)
|
||||||
|
|
||||||
fun VersionResponse.toVersionInfo() = VersionInfo(production, version, demoStatus)
|
fun VersionResponse.toVersionInfo() = VersionInfo(version)
|
||||||
|
|
||||||
|
fun VersionResponseV1.toVersionInfo() = VersionInfo(version)
|
||||||
|
|
||||||
fun AddRecipeDraft.toAddRecipeRequest() = AddRecipeRequest(
|
fun AddRecipeDraft.toAddRecipeRequest() = AddRecipeRequest(
|
||||||
name = recipeName,
|
name = recipeName,
|
||||||
|
|||||||
@@ -2,8 +2,8 @@ package gq.kirmanak.mealient.datasource.v1
|
|||||||
|
|
||||||
import gq.kirmanak.mealient.datasource.models.AddRecipeRequest
|
import gq.kirmanak.mealient.datasource.models.AddRecipeRequest
|
||||||
import gq.kirmanak.mealient.datasource.models.GetRecipeResponse
|
import gq.kirmanak.mealient.datasource.models.GetRecipeResponse
|
||||||
import gq.kirmanak.mealient.datasource.models.VersionResponse
|
|
||||||
import gq.kirmanak.mealient.datasource.v1.models.GetRecipeSummaryResponseV1
|
import gq.kirmanak.mealient.datasource.v1.models.GetRecipeSummaryResponseV1
|
||||||
|
import gq.kirmanak.mealient.datasource.v1.models.VersionResponseV1
|
||||||
|
|
||||||
interface MealieDataSourceV1 {
|
interface MealieDataSourceV1 {
|
||||||
|
|
||||||
@@ -24,7 +24,7 @@ interface MealieDataSourceV1 {
|
|||||||
|
|
||||||
suspend fun getVersionInfo(
|
suspend fun getVersionInfo(
|
||||||
baseUrl: String,
|
baseUrl: String,
|
||||||
): VersionResponse
|
): VersionResponseV1
|
||||||
|
|
||||||
suspend fun requestRecipes(
|
suspend fun requestRecipes(
|
||||||
baseUrl: String,
|
baseUrl: String,
|
||||||
|
|||||||
@@ -3,8 +3,8 @@ package gq.kirmanak.mealient.datasource.v1
|
|||||||
import gq.kirmanak.mealient.datasource.models.AddRecipeRequest
|
import gq.kirmanak.mealient.datasource.models.AddRecipeRequest
|
||||||
import gq.kirmanak.mealient.datasource.models.GetRecipeResponse
|
import gq.kirmanak.mealient.datasource.models.GetRecipeResponse
|
||||||
import gq.kirmanak.mealient.datasource.models.NetworkError
|
import gq.kirmanak.mealient.datasource.models.NetworkError
|
||||||
import gq.kirmanak.mealient.datasource.models.VersionResponse
|
|
||||||
import gq.kirmanak.mealient.datasource.v1.models.GetRecipeSummaryResponseV1
|
import gq.kirmanak.mealient.datasource.v1.models.GetRecipeSummaryResponseV1
|
||||||
|
import gq.kirmanak.mealient.datasource.v1.models.VersionResponseV1
|
||||||
import gq.kirmanak.mealient.logging.Logger
|
import gq.kirmanak.mealient.logging.Logger
|
||||||
import kotlinx.serialization.SerializationException
|
import kotlinx.serialization.SerializationException
|
||||||
import kotlinx.serialization.json.Json
|
import kotlinx.serialization.json.Json
|
||||||
@@ -33,7 +33,7 @@ class MealieDataSourceV1Impl @Inject constructor(
|
|||||||
TODO("Not yet implemented")
|
TODO("Not yet implemented")
|
||||||
}
|
}
|
||||||
|
|
||||||
override suspend fun getVersionInfo(baseUrl: String): VersionResponse = makeCall(
|
override suspend fun getVersionInfo(baseUrl: String): VersionResponseV1 = makeCall(
|
||||||
block = { getVersion("$baseUrl/api/app/about") },
|
block = { getVersion("$baseUrl/api/app/about") },
|
||||||
logMethod = { "getVersionInfo" },
|
logMethod = { "getVersionInfo" },
|
||||||
logParameters = { "baseUrl = $baseUrl" },
|
logParameters = { "baseUrl = $baseUrl" },
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package gq.kirmanak.mealient.datasource.v1
|
|||||||
import gq.kirmanak.mealient.datasource.DataSourceModule.Companion.AUTHORIZATION_HEADER_NAME
|
import gq.kirmanak.mealient.datasource.DataSourceModule.Companion.AUTHORIZATION_HEADER_NAME
|
||||||
import gq.kirmanak.mealient.datasource.models.*
|
import gq.kirmanak.mealient.datasource.models.*
|
||||||
import gq.kirmanak.mealient.datasource.v1.models.GetRecipesResponseV1
|
import gq.kirmanak.mealient.datasource.v1.models.GetRecipesResponseV1
|
||||||
|
import gq.kirmanak.mealient.datasource.v1.models.VersionResponseV1
|
||||||
import retrofit2.http.*
|
import retrofit2.http.*
|
||||||
|
|
||||||
interface MealieServiceV1 {
|
interface MealieServiceV1 {
|
||||||
@@ -25,7 +26,7 @@ interface MealieServiceV1 {
|
|||||||
@GET
|
@GET
|
||||||
suspend fun getVersion(
|
suspend fun getVersion(
|
||||||
@Url url: String,
|
@Url url: String,
|
||||||
): VersionResponse
|
): VersionResponseV1
|
||||||
|
|
||||||
@GET
|
@GET
|
||||||
suspend fun getRecipeSummary(
|
suspend fun getRecipeSummary(
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
package gq.kirmanak.mealient.datasource.v1.models
|
||||||
|
|
||||||
|
import kotlinx.serialization.SerialName
|
||||||
|
import kotlinx.serialization.Serializable
|
||||||
|
|
||||||
|
@Serializable
|
||||||
|
data class VersionResponseV1(
|
||||||
|
@SerialName("production") val production: Boolean,
|
||||||
|
@SerialName("version") val version: String,
|
||||||
|
@SerialName("demoStatus") val demoStatus: Boolean,
|
||||||
|
@SerialName("allowSignup") val allowSignup: Boolean,
|
||||||
|
)
|
||||||
Reference in New Issue
Block a user