Skip to content

Commit

Permalink
Remove unnecessary boolean parameters from serialization functions.
Browse files Browse the repository at this point in the history
  • Loading branch information
dzarras committed Sep 25, 2024
1 parent 019d58d commit 014fff7
Showing 1 changed file with 22 additions and 28 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -164,8 +164,8 @@ private fun credentialMetaDataJson(d: CredentialConfiguration): JsonObject = bui
}
when (d) {
is JwtVcJsonCredentialConfiguration -> TODO()
is MsoMdocCredentialConfiguration -> d.toTransferObject(false)(this)
is SdJwtVcCredentialConfiguration -> d.toTransferObject(false)(this)
is MsoMdocCredentialConfiguration -> d.toTransferObject()(this)
is SdJwtVcCredentialConfiguration -> d.toTransferObject()(this)
}
}

Expand Down Expand Up @@ -195,46 +195,40 @@ private fun ProofType.toJsonObject(): JsonObject =
}

@OptIn(ExperimentalSerializationApi::class)
internal fun MsoMdocCredentialConfiguration.toTransferObject(isOffer: Boolean): JsonObjectBuilder.() -> Unit = {
internal fun MsoMdocCredentialConfiguration.toTransferObject(): JsonObjectBuilder.() -> Unit = {
put("doctype", docType)
if (!isOffer) {
if (display.isNotEmpty()) {
putJsonArray("display") {
addAll(display.map { it.toTransferObject() })
}
if (display.isNotEmpty()) {
putJsonArray("display") {
addAll(display.map { it.toTransferObject() })
}
if (policy != null) {
putJsonObject("policy") {
put("one_time_use", policy.oneTimeUse)
policy.batchSize?.let { put("batch_size", it) }
}
}
if (policy != null) {
putJsonObject("policy") {
put("one_time_use", policy.oneTimeUse)
policy.batchSize?.let { put("batch_size", it) }
}
}

putJsonObject("claims") {
msoClaims.forEach { (nameSpace, attributes) ->
putJsonObject(nameSpace) {
attributes.forEach { attribute -> attribute.toTransferObject(this) }
}
putJsonObject("claims") {
msoClaims.forEach { (nameSpace, attributes) ->
putJsonObject(nameSpace) {
attributes.forEach { attribute -> attribute.toTransferObject(this) }
}
}
}
}

@OptIn(ExperimentalSerializationApi::class)
internal fun SdJwtVcCredentialConfiguration.toTransferObject(isOffer: Boolean): JsonObjectBuilder.() -> Unit = {
internal fun SdJwtVcCredentialConfiguration.toTransferObject(): JsonObjectBuilder.() -> Unit = {
put("vct", type.value)
if (!isOffer) {
if (display.isNotEmpty()) {
putJsonArray("display") {
addAll(display.map { it.toTransferObject() })
}
if (display.isNotEmpty()) {
putJsonArray("display") {
addAll(display.map { it.toTransferObject() })
}
}
put("vct", type.value)
if (!isOffer) {
putJsonObject("claims") {
claims.forEach { attribute -> attribute.toTransferObject(this) }
}
putJsonObject("claims") {
claims.forEach { attribute -> attribute.toTransferObject(this) }
}
}

Expand Down

0 comments on commit 014fff7

Please sign in to comment.