refactor: SignatureBase.ktを変更

Signature-Inputヘッダーを生成しやすいように
This commit is contained in:
usbharu 2024-09-23 12:56:02 +09:00
parent 940e82f279
commit c8e437fcb1
Signed by: usbharu
GPG Key ID: 95CBCF7046307B77
1 changed files with 8 additions and 4 deletions

View File

@ -15,7 +15,13 @@ class SignatureBase() {
val signatureBase =
list.values.joinToString(postfix = "\n") { component -> "${component.componentIdentifier}: ${component.componentValue}\n" }
val signatureParams = listOfNotNull(
val signatureParams = "\"@signature-params\":" + generateSignatureParameterString(signatureParameter)
return signatureBase + signatureParams
}
fun generateSignatureParameterString(signatureParameter: SignatureParameter): String {
return listOfNotNull(
list.keys.joinToString(" ", "(", ")"),
signatureParameter.algorithm?.let { algorithm -> "alg=\"${algorithm.value}\"" },
signatureParameter.keyId?.let { keyId -> "keyid=\"$keyId\"" },
@ -23,8 +29,6 @@ class SignatureBase() {
signatureParameter.expires?.let { expires -> "expires=$expires" },
signatureParameter.nonce?.let { nonce -> "nonce=\"$nonce\"" },
signatureParameter.tag?.let { tag -> "tag=\"$tag\"" },
).joinToString(";", prefix = "\"@signature-params\": ")
return signatureBase + signatureParams
).joinToString(";")
}
}