diff options
Diffstat (limited to 'bank/src/main/kotlin/tech/libeufin/bank/helpers.kt')
-rw-r--r-- | bank/src/main/kotlin/tech/libeufin/bank/helpers.kt | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/bank/src/main/kotlin/tech/libeufin/bank/helpers.kt b/bank/src/main/kotlin/tech/libeufin/bank/helpers.kt index 85dd8ff2..84dc96a6 100644 --- a/bank/src/main/kotlin/tech/libeufin/bank/helpers.kt +++ b/bank/src/main/kotlin/tech/libeufin/bank/helpers.kt @@ -29,6 +29,9 @@ import io.ktor.server.routing.RouteSelectorEvaluation import io.ktor.server.routing.RoutingResolveContext import io.ktor.server.util.* import io.ktor.util.pipeline.PipelineContext +import kotlinx.serialization.* +import kotlinx.serialization.descriptors.* +import kotlinx.serialization.encoding.* import java.net.* import java.time.* import java.time.temporal.* @@ -132,7 +135,11 @@ suspend fun maybeCreateAdminAccount(db: Database, ctx: BankConfig, pw: String? = isTalerExchange = false, maxDebt = ctx.defaultDebtLimit, bonus = TalerAmount(0, 0, ctx.regionalCurrency), - checkPaytoIdempotent = false + checkPaytoIdempotent = false, + email = null, + phone = null, + cashoutPayto = null, + tanChannel = null ) } @@ -157,4 +164,19 @@ fun Route.conditional(implemented: Boolean, callback: Route.() -> Unit): Route = } } -
\ No newline at end of file +@Serializable(with = StoredUUID.Serializer::class) +data class StoredUUID(val value: UUID) { + internal object Serializer : KSerializer<StoredUUID> { + override val descriptor: SerialDescriptor = + PrimitiveSerialDescriptor("StoredUUID", PrimitiveKind.STRING) + + override fun serialize(encoder: Encoder, value: StoredUUID) { + encoder.encodeString(value.value.toString()) + } + + override fun deserialize(decoder: Decoder): StoredUUID { + val string = decoder.decodeString() + return StoredUUID(UUID.fromString(string)) + } + } +} |