Client : Error management
This commit is contained in:
parent
d806048510
commit
1ebb7c1400
48 changed files with 630 additions and 473 deletions
|
|
@ -0,0 +1,52 @@
|
|||
package com.pixelized.shared.lwa.protocol.rest
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
||||
data class APIResponse<T>(
|
||||
val success: Boolean,
|
||||
val status: Int,
|
||||
val message: String?,
|
||||
val data: T?,
|
||||
) {
|
||||
companion object {
|
||||
const val SUCCESS = 100
|
||||
|
||||
const val GENERIC = 600
|
||||
|
||||
const val MISSING_PARAMETER = 700
|
||||
const val MISSING_CHARACTER_SHEET_ID = MISSING_PARAMETER + 1
|
||||
const val MISSING_ALTERATION_ID = MISSING_PARAMETER + 2
|
||||
const val MISSING_CREATE = MISSING_PARAMETER + 3
|
||||
const val MISSING_ACTIVE = MISSING_PARAMETER + 4
|
||||
const val MISSING_DAMAGE = MISSING_PARAMETER + 5
|
||||
const val MISSING_FATIGUE = MISSING_PARAMETER + 6
|
||||
const val MISSING_DIMINISHED = MISSING_PARAMETER + 7
|
||||
|
||||
fun error(
|
||||
status: Int,
|
||||
message: String?,
|
||||
) = APIResponse(
|
||||
success = false,
|
||||
status = status,
|
||||
message = message,
|
||||
data = null,
|
||||
)
|
||||
|
||||
fun success() = APIResponse(
|
||||
success = true,
|
||||
status = SUCCESS,
|
||||
message = null,
|
||||
data = null,
|
||||
)
|
||||
|
||||
inline fun <reified T> success(
|
||||
data: T? = null,
|
||||
) = APIResponse(
|
||||
success = true,
|
||||
status = SUCCESS,
|
||||
message = null,
|
||||
data = data,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
package com.pixelized.shared.lwa.protocol.rest
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
||||
sealed interface ResultJson {
|
||||
val success: Boolean
|
||||
|
||||
@Serializable
|
||||
data class Error(
|
||||
override val success: Boolean = false,
|
||||
val status: Int,
|
||||
val message: String,
|
||||
) : ResultJson {
|
||||
companion object {
|
||||
const val GENERIC = 600
|
||||
|
||||
const val MISSING_PARAMETER = 700
|
||||
const val MISSING_CHARACTER_SHEET_ID = MISSING_PARAMETER + 1
|
||||
const val MISSING_ALTERATION_ID = MISSING_PARAMETER + 2
|
||||
const val MISSING_CREATE = MISSING_PARAMETER + 3
|
||||
const val MISSING_ACTIVE = MISSING_PARAMETER + 4
|
||||
const val MISSING_DAMAGE = MISSING_PARAMETER + 5
|
||||
const val MISSING_FATIGUE = MISSING_PARAMETER + 6
|
||||
const val MISSING_DIMINISHED = MISSING_PARAMETER + 7
|
||||
}
|
||||
}
|
||||
|
||||
@Serializable
|
||||
data class Success(
|
||||
override val success: Boolean = true,
|
||||
val status: Int = 100,
|
||||
) : ResultJson
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue