Return V1 version response from V1 data source
This commit is contained in:
@@ -1,7 +1,5 @@
|
||||
package gq.kirmanak.mealient.data.baseurl
|
||||
|
||||
data class VersionInfo(
|
||||
val production: Boolean,
|
||||
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.datasource.models.*
|
||||
import gq.kirmanak.mealient.datasource.v1.models.GetRecipeSummaryResponseV1
|
||||
import gq.kirmanak.mealient.datasource.v1.models.VersionResponseV1
|
||||
import gq.kirmanak.mealient.datastore.recipe.AddRecipeDraft
|
||||
|
||||
fun GetRecipeResponse.toRecipeEntity() = RecipeEntity(
|
||||
@@ -43,7 +44,9 @@ fun GetRecipeSummaryResponseV1.recipeEntity() = RecipeSummaryEntity(
|
||||
dateUpdated = dateUpdated,
|
||||
)
|
||||
|
||||
fun VersionResponse.toVersionInfo() = VersionInfo(production, version, demoStatus)
|
||||
fun VersionResponse.toVersionInfo() = VersionInfo(version)
|
||||
|
||||
fun VersionResponseV1.toVersionInfo() = VersionInfo(version)
|
||||
|
||||
fun AddRecipeDraft.toAddRecipeRequest() = AddRecipeRequest(
|
||||
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.GetRecipeResponse
|
||||
import gq.kirmanak.mealient.datasource.models.VersionResponse
|
||||
import gq.kirmanak.mealient.datasource.v1.models.GetRecipeSummaryResponseV1
|
||||
import gq.kirmanak.mealient.datasource.v1.models.VersionResponseV1
|
||||
|
||||
interface MealieDataSourceV1 {
|
||||
|
||||
@@ -24,7 +24,7 @@ interface MealieDataSourceV1 {
|
||||
|
||||
suspend fun getVersionInfo(
|
||||
baseUrl: String,
|
||||
): VersionResponse
|
||||
): VersionResponseV1
|
||||
|
||||
suspend fun requestRecipes(
|
||||
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.GetRecipeResponse
|
||||
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.VersionResponseV1
|
||||
import gq.kirmanak.mealient.logging.Logger
|
||||
import kotlinx.serialization.SerializationException
|
||||
import kotlinx.serialization.json.Json
|
||||
@@ -33,7 +33,7 @@ class MealieDataSourceV1Impl @Inject constructor(
|
||||
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") },
|
||||
logMethod = { "getVersionInfo" },
|
||||
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.models.*
|
||||
import gq.kirmanak.mealient.datasource.v1.models.GetRecipesResponseV1
|
||||
import gq.kirmanak.mealient.datasource.v1.models.VersionResponseV1
|
||||
import retrofit2.http.*
|
||||
|
||||
interface MealieServiceV1 {
|
||||
@@ -25,7 +26,7 @@ interface MealieServiceV1 {
|
||||
@GET
|
||||
suspend fun getVersion(
|
||||
@Url url: String,
|
||||
): VersionResponse
|
||||
): VersionResponseV1
|
||||
|
||||
@GET
|
||||
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