Refactors master serializer name from EventMapper to JsonMapper

This commit is contained in:
Vitor Pamplona
2025-07-11 17:10:51 -04:00
parent bb5ae5d09e
commit f93b08a272
42 changed files with 135 additions and 136 deletions
@@ -24,7 +24,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation
import com.fasterxml.jackson.module.kotlin.readValue
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.verify
import junit.framework.TestCase.assertEquals
import junit.framework.TestCase.assertTrue
@@ -42,7 +42,7 @@ class LargeDBSignatureCheck {
val fullDBInputStream = getInstrumentation().context.assets.open("nostr_vitor_short.json")
val eventArray =
EventMapper.mapper.readValue<ArrayList<Event>>(
JsonMapper.mapper.readValue<ArrayList<Event>>(
InputStreamReader(fullDBInputStream),
) as List<Event>
@@ -62,7 +62,7 @@ class LargeDBSignatureCheck {
val fullDBInputStream = getInstrumentation().context.assets.open("nostr_vitor_startup_data.json")
val eventArray =
EventMapper.mapper.readValue<ArrayList<Event>>(
JsonMapper.mapper.readValue<ArrayList<Event>>(
GZIPInputStream(fullDBInputStream),
) as List<Event>
@@ -21,7 +21,7 @@
package com.vitorpamplona.quartz.nip01Core
import androidx.test.ext.junit.runners.AndroidJUnit4
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import org.junit.Test
import org.junit.runner.RunWith
@@ -52,8 +52,8 @@ class EventSigCheck {
@Test
fun testUnicode2028and2029ShouldNotBeEscaped() {
val msg = EventMapper.mapper.readTree(payload1)
val event = EventMapper.fromJson(msg[2])
val msg = JsonMapper.mapper.readTree(payload1)
val event = JsonMapper.fromJson(msg[2])
// Should pass
event.checkSignature()
@@ -24,7 +24,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.core.toHexKey
import com.vitorpamplona.quartz.nip01Core.crypto.KeyPair
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.signers.NostrSignerInternal
import com.vitorpamplona.quartz.nip57Zaps.PrivateZapEncryption.Companion.createEncryptionPrivateKey
import com.vitorpamplona.quartz.nip59GiftWraps.wait1SecondForResult
@@ -39,7 +39,7 @@ class PrivateZapTests {
@Test
fun testPollZap() {
val poll =
EventMapper.fromJson(
JsonMapper.fromJson(
"""{
"content": "New poll \n\n #zappoll",
"created_at": 1682440713,
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.experimental.audio.header.tags
import com.fasterxml.jackson.module.kotlin.readValue
import com.vitorpamplona.quartz.nip01Core.core.has
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.utils.ensure
class WaveformTag(
@@ -38,12 +38,12 @@ class WaveformTag(
ensure(tag.has(1)) { return null }
ensure(tag[0] == TAG_NAME) { return null }
ensure(tag[1].isNotEmpty()) { return null }
val wave = runCatching { EventMapper.mapper.readValue<List<Int>>(tag[1]) }.getOrNull()
val wave = runCatching { JsonMapper.mapper.readValue<List<Int>>(tag[1]) }.getOrNull()
if (wave.isNullOrEmpty()) return null
return WaveformTag(wave)
}
@JvmStatic
fun assemble(wave: List<Int>) = arrayOf(TAG_NAME, EventMapper.mapper.writeValueAsString(wave))
fun assemble(wave: List<Int>) = arrayOf(TAG_NAME, JsonMapper.mapper.writeValueAsString(wave))
}
}
@@ -27,7 +27,7 @@ import com.vitorpamplona.quartz.experimental.edits.tags.RelayTag
import com.vitorpamplona.quartz.nip01Core.core.BaseReplaceableEvent
import com.vitorpamplona.quartz.nip01Core.core.HexKey
import com.vitorpamplona.quartz.nip01Core.core.TagArray
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.relay.normalizer.NormalizedRelayUrl
import com.vitorpamplona.quartz.nip01Core.signers.NostrSigner
import com.vitorpamplona.quartz.nip01Core.tags.addressables.ATag
@@ -81,7 +81,7 @@ class PrivateOutboxRelayListEvent(
try {
signer.nip44Decrypt(content, pubKey) {
try {
privateTagsCache = EventMapper.mapper.readValue<TagArray>(it)
privateTagsCache = JsonMapper.mapper.readValue<TagArray>(it)
privateTagsCache?.let { onReady(it) }
} catch (e: Throwable) {
Log.w("PrivateOutboxRelayListEvent", "Error parsing the JSON: ${e.message}. Json `$it` from event `${toNostrUri()}`")
@@ -107,7 +107,7 @@ class PrivateOutboxRelayListEvent(
signer: NostrSigner,
onReady: (String) -> Unit,
) {
val msg = EventMapper.mapper.writeValueAsString(privateTags)
val msg = JsonMapper.mapper.writeValueAsString(privateTags)
signer.nip44Encrypt(
msg,
@@ -21,9 +21,8 @@
package com.vitorpamplona.quartz.nip01Core.core
import androidx.compose.runtime.Immutable
import com.fasterxml.jackson.annotation.JsonProperty
import com.vitorpamplona.quartz.nip01Core.jackson.EventManualSerializer
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.signers.eventTemplate
import com.vitorpamplona.quartz.utils.TimeUtils
import com.vitorpamplona.quartz.utils.bytesUsedInMemory
@@ -32,8 +31,8 @@ import com.vitorpamplona.quartz.utils.pointerSizeInBytes
@Immutable
open class Event(
val id: HexKey,
@JsonProperty("pubkey") val pubKey: HexKey,
@JsonProperty("created_at") val createdAt: Long,
val pubKey: HexKey,
val createdAt: Long,
val kind: Int,
val tags: TagArray,
val content: String,
@@ -57,7 +56,7 @@ open class Event(
fun toJson(): String = EventManualSerializer.toJson(id, pubKey, createdAt, kind, tags, content, sig)
companion object {
fun fromJson(json: String): Event = EventMapper.fromJson(json)
fun fromJson(json: String): Event = JsonMapper.fromJson(json)
fun build(
kind: Int,
@@ -24,7 +24,7 @@ import com.fasterxml.jackson.databind.node.ArrayNode
import com.fasterxml.jackson.databind.node.JsonNodeFactory
import com.vitorpamplona.quartz.nip01Core.core.HexKey
import com.vitorpamplona.quartz.nip01Core.core.toHexKey
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.utils.sha256.sha256
class EventHasher {
@@ -61,7 +61,7 @@ class EventHasher {
kind: Int,
tags: Array<Array<String>>,
content: String,
): String = EventMapper.toJson(makeJsonObjectForId(pubKey, createdAt, kind, tags, content))
): String = JsonMapper.toJson(makeJsonObjectForId(pubKey, createdAt, kind, tags, content))
fun hashIdBytes(
pubKey: HexKey,
@@ -67,7 +67,7 @@ class EventManualSerializer {
sig: String,
): String {
val obj = assemble(id, pubKey, createdAt, kind, tags, content, sig)
return EventMapper.mapper.writeValueAsString(obj)
return JsonMapper.mapper.writeValueAsString(obj)
}
}
}
@@ -39,8 +39,8 @@ import com.vitorpamplona.quartz.nip59Giftwrap.rumors.Rumor
import com.vitorpamplona.quartz.nip59Giftwrap.rumors.RumorDeserializer
import com.vitorpamplona.quartz.nip59Giftwrap.rumors.RumorSerializer
class EventMapper {
companion object {
class JsonMapper {
companion object Companion {
val defaultPrettyPrinter = InliningTagArrayPrettyPrinter()
val mapper =
@@ -28,7 +28,7 @@ import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.core.HexKey
import com.vitorpamplona.quartz.nip01Core.core.TagArrayBuilder
import com.vitorpamplona.quartz.nip01Core.core.builder
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.metadata.tags.AboutTag
import com.vitorpamplona.quartz.nip01Core.metadata.tags.BannerTag
import com.vitorpamplona.quartz.nip01Core.metadata.tags.DisplayNameTag
@@ -63,7 +63,7 @@ class MetadataEvent(
fun contactMetaData() =
try {
EventMapper.mapper.readValue(content, UserMetadata::class.java)
JsonMapper.mapper.readValue(content, UserMetadata::class.java)
} catch (e: Exception) {
Log.w("MetadataEvent", "Content Parse Error: ${toNostrUri()} ${e.localizedMessage}")
null
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.nip01Core.relay.commands.toClient
import com.fasterxml.jackson.databind.JsonNode
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
class EventMessage(
val subId: String,
@@ -35,7 +35,7 @@ class EventMessage(
fun parse(msgArray: JsonNode): EventMessage =
EventMessage(
msgArray.get(1).asText(),
EventMapper.fromJson(msgArray.get(2)),
JsonMapper.fromJson(msgArray.get(2)),
)
}
}
@@ -20,11 +20,11 @@
*/
package com.vitorpamplona.quartz.nip01Core.relay.commands.toClient
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
class ToClientParser {
fun parse(newMessage: String): Message? {
val msgArray = EventMapper.mapper.readTree(newMessage)
val msgArray = JsonMapper.mapper.readTree(newMessage)
val type = msgArray.get(0).asText()
return when (type) {
EventMessage.LABEL -> EventMessage.parse(msgArray)
@@ -21,7 +21,7 @@
package com.vitorpamplona.quartz.nip01Core.relay.commands.toRelay
import com.fasterxml.jackson.databind.JsonNode
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip42RelayAuth.RelayAuthEvent
class AuthCmd(
@@ -36,7 +36,7 @@ class AuthCmd(
@JvmStatic
fun parse(msgArray: JsonNode): AuthCmd =
AuthCmd(
EventMapper.fromJson(msgArray.get(1)) as RelayAuthEvent,
JsonMapper.fromJson(msgArray.get(1)) as RelayAuthEvent,
)
}
}
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.nip01Core.relay.commands.toRelay
import com.fasterxml.jackson.databind.JsonNode
import com.fasterxml.jackson.databind.node.ObjectNode
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.relay.filters.Filter
import com.vitorpamplona.quartz.nip01Core.relay.filters.FilterDeserializer
import com.vitorpamplona.quartz.utils.joinToStringLimited
@@ -54,7 +54,7 @@ class CountCmd(
val filters = mutableListOf<Filter>()
for (i in 2 until msgArray.size()) {
val json = EventMapper.mapper.readTree(msgArray.get(i).asText())
val json = JsonMapper.mapper.readTree(msgArray.get(i).asText())
if (json is ObjectNode) {
filters.add(FilterDeserializer.fromJson(json))
}
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.nip01Core.relay.commands.toRelay
import com.fasterxml.jackson.databind.JsonNode
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
class EventCmd(
val event: Event,
@@ -36,7 +36,7 @@ class EventCmd(
@JvmStatic
fun parse(msgArray: JsonNode): EventCmd =
EventCmd(
EventMapper.fromJson(msgArray.get(1)),
JsonMapper.fromJson(msgArray.get(1)),
)
}
}
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.nip01Core.relay.commands.toRelay
import com.fasterxml.jackson.databind.JsonNode
import com.fasterxml.jackson.databind.node.ObjectNode
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.relay.filters.Filter
import com.vitorpamplona.quartz.nip01Core.relay.filters.FilterDeserializer
import com.vitorpamplona.quartz.utils.joinToStringLimited
@@ -54,7 +54,7 @@ class ReqCmd(
val filters = mutableListOf<Filter>()
for (i in 2 until msgArray.size()) {
val json = EventMapper.mapper.readTree(msgArray.get(i).asText())
val json = JsonMapper.mapper.readTree(msgArray.get(i).asText())
if (json is ObjectNode) {
filters.add(FilterDeserializer.fromJson(json))
}
@@ -20,11 +20,11 @@
*/
package com.vitorpamplona.quartz.nip01Core.relay.commands.toRelay
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
class ToRelayParser {
fun parse(newMessage: String): Command? {
val msgArray = EventMapper.mapper.readTree(newMessage)
val msgArray = JsonMapper.mapper.readTree(newMessage)
val type = msgArray.get(0).asText()
return when (type) {
AuthCmd.LABEL -> AuthCmd.parse(msgArray)
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.nip01Core.relay.filters
import com.fasterxml.jackson.databind.node.JsonNodeFactory
import com.fasterxml.jackson.databind.node.ObjectNode
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
object FilterSerializer {
fun toJsonObject(
@@ -80,7 +80,7 @@ object FilterSerializer {
limit: Int? = null,
search: String? = null,
): String =
EventMapper.mapper.writeValueAsString(
JsonMapper.mapper.writeValueAsString(
toJsonObject(
ids,
authors,
@@ -26,7 +26,7 @@ import com.vitorpamplona.quartz.nip01Core.core.TagArray
import com.vitorpamplona.quartz.nip01Core.core.TagArrayBuilder
import com.vitorpamplona.quartz.nip01Core.core.builder
import com.vitorpamplona.quartz.nip01Core.core.tagArray
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.utils.TimeUtils
class EventTemplate<T : Event>(
@@ -36,10 +36,10 @@ class EventTemplate<T : Event>(
val tags: TagArray,
val content: String,
) {
fun toJson(): String = EventMapper.mapper.writeValueAsString(this)
fun toJson(): String = JsonMapper.mapper.writeValueAsString(this)
companion object {
fun fromJson(json: String): EventTemplate<Event> = EventTemplateManualDeserializer.fromJson(EventMapper.mapper.readTree(json))
fun fromJson(json: String): EventTemplate<Event> = EventTemplateManualDeserializer.fromJson(JsonMapper.mapper.readTree(json))
}
}
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.nip02FollowList
import android.util.Log
import com.fasterxml.jackson.module.kotlin.readValue
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
data class ReadWrite(
val read: Boolean,
@@ -31,12 +31,12 @@ data class ReadWrite(
class RelaySet {
companion object {
fun assemble(relayUse: Map<String, ReadWrite>): String = EventMapper.mapper.writeValueAsString(relayUse)
fun assemble(relayUse: Map<String, ReadWrite>): String = JsonMapper.mapper.writeValueAsString(relayUse)
fun parse(content: String): Map<String, ReadWrite>? =
try {
if (content.isNotEmpty()) {
EventMapper.mapper.readValue<Map<String, ReadWrite>>(content)
JsonMapper.mapper.readValue<Map<String, ReadWrite>>(content)
} else {
null
}
@@ -20,7 +20,7 @@
*/
package com.vitorpamplona.quartz.nip05DnsIdentifiers
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import kotlinx.coroutines.CancellationException
class Nip05 {
@@ -46,7 +46,7 @@ class Nip05 {
// lowercase version of the username.
val nip05url =
try {
EventMapper.mapper.readTree(returnBody.lowercase())
JsonMapper.mapper.readTree(returnBody.lowercase())
} catch (e: Throwable) {
if (e is CancellationException) throw e
return Result.failure(e)
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.nip28PublicChat.base
import androidx.compose.runtime.Immutable
import com.fasterxml.jackson.module.kotlin.readValue
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.relay.normalizer.NormalizedRelayUrl
import com.vitorpamplona.quartz.nip01Core.relay.normalizer.RelayUrlNormalizer
@@ -38,9 +38,9 @@ data class ChannelData(
fun normalize() = ChannelDataNorm(name, about, picture, relays?.mapNotNull { RelayUrlNormalizer.normalizeOrNull(it) })
companion object {
fun parse(content: String): ChannelData? = EventMapper.mapper.readValue(content)
fun parse(content: String): ChannelData? = JsonMapper.mapper.readValue(content)
fun assemble(data: ChannelData) = EventMapper.mapper.writeValueAsString(data)
fun assemble(data: ChannelData) = JsonMapper.mapper.writeValueAsString(data)
}
}
@@ -21,7 +21,7 @@
package com.vitorpamplona.quartz.nip44Encryption
import android.util.Log
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip04Dm.crypto.EncryptedInfo
import com.vitorpamplona.quartz.nip04Dm.crypto.Nip04
import java.util.Base64
@@ -66,7 +66,7 @@ object Nip44 {
// Ignores if it is not a valid json
val info =
try {
EventMapper.mapper.readValue(json, EncryptedInfoString::class.java)
JsonMapper.mapper.readValue(json, EncryptedInfoString::class.java)
} catch (e: Exception) {
Log.e("NIP44", "Unable to parse json $json")
return null
@@ -21,19 +21,19 @@
package com.vitorpamplona.quartz.nip46RemoteSigner
import com.fasterxml.jackson.core.type.TypeReference
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip02FollowList.ReadWrite
import java.util.UUID
class BunkerResponseGetRelays(
id: String = UUID.randomUUID().toString(),
val relays: Map<String, ReadWrite>,
) : BunkerResponse(id, EventMapper.mapper.writeValueAsString(relays), null) {
) : BunkerResponse(id, JsonMapper.mapper.writeValueAsString(relays), null) {
companion object {
fun parse(
id: String,
result: String,
error: String? = null,
) = BunkerResponseGetRelays(id, EventMapper.mapper.readValue(result, object : TypeReference<Map<String, ReadWrite>>() {}))
) = BunkerResponseGetRelays(id, JsonMapper.mapper.readValue(result, object : TypeReference<Map<String, ReadWrite>>() {}))
}
}
@@ -23,7 +23,7 @@ package com.vitorpamplona.quartz.nip46RemoteSigner
import androidx.compose.runtime.Immutable
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.core.HexKey
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.signers.NostrSigner
import com.vitorpamplona.quartz.nip31Alts.AltTag
import com.vitorpamplona.quartz.utils.Hex
@@ -73,7 +73,7 @@ class NostrConnectEvent(
// decrypts using NIP-04 or NIP-44
signer.decrypt(content, talkingWith(signer.pubKey)) { retVal ->
val content = EventMapper.mapper.readValue(retVal, BunkerMessage::class.java)
val content = JsonMapper.mapper.readValue(retVal, BunkerMessage::class.java)
decryptedContent = decryptedContent + Pair(signer.pubKey, content)
@@ -98,7 +98,7 @@ class NostrConnectEvent(
arrayOf("p", remoteKey),
)
val encrypted = EventMapper.mapper.writeValueAsString(message)
val encrypted = JsonMapper.mapper.writeValueAsString(message)
signer.nip44Encrypt(encrypted, remoteKey) { content ->
signer.sign(createdAt, KIND, tags, content, onReady)
@@ -24,7 +24,7 @@ import android.util.Log
import androidx.compose.runtime.Immutable
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.core.HexKey
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.signers.NostrSigner
import com.vitorpamplona.quartz.nip31Alts.AltTag
import com.vitorpamplona.quartz.utils.TimeUtils
@@ -62,7 +62,7 @@ class LnZapPaymentRequestEvent(
try {
signer.decrypt(content, talkingWith(signer.pubKey)) { jsonText ->
val payInvoiceMethod = EventMapper.mapper.readValue(jsonText, Request::class.java)
val payInvoiceMethod = JsonMapper.mapper.readValue(jsonText, Request::class.java)
lnInvoice = (payInvoiceMethod as? PayInvoiceMethod)?.params?.invoice
@@ -84,7 +84,7 @@ class LnZapPaymentRequestEvent(
createdAt: Long = TimeUtils.now(),
onReady: (LnZapPaymentRequestEvent) -> Unit,
) {
val serializedRequest = EventMapper.mapper.writeValueAsString(PayInvoiceMethod.create(lnInvoice))
val serializedRequest = JsonMapper.mapper.writeValueAsString(PayInvoiceMethod.create(lnInvoice))
val tags = arrayOf(arrayOf("p", walletServicePubkey), AltTag.assemble(ALT))
@@ -24,7 +24,7 @@ import android.util.Log
import androidx.compose.runtime.Immutable
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.core.HexKey
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.signers.NostrSigner
import com.vitorpamplona.quartz.utils.pointerSizeInBytes
@@ -71,7 +71,7 @@ class LnZapPaymentResponseEvent(
try {
if (content.isNotEmpty()) {
plainContent(signer) {
EventMapper.mapper.readValue(it, Response::class.java)?.let {
JsonMapper.mapper.readValue(it, Response::class.java)?.let {
response = it
onReady(it)
}
@@ -26,7 +26,7 @@ import com.vitorpamplona.quartz.nip01Core.core.isTagged
import com.vitorpamplona.quartz.nip01Core.hints.AddressHintProvider
import com.vitorpamplona.quartz.nip01Core.hints.EventHintProvider
import com.vitorpamplona.quartz.nip01Core.hints.PubKeyHintProvider
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.signers.NostrSigner
import com.vitorpamplona.quartz.nip01Core.tags.addressables.ATag
import com.vitorpamplona.quartz.nip01Core.tags.addressables.Address
@@ -176,7 +176,7 @@ abstract class GeneralListEvent(
signer: NostrSigner,
onReady: (String) -> Unit,
) {
val msg = EventMapper.mapper.writeValueAsString(privateTags)
val msg = JsonMapper.mapper.writeValueAsString(privateTags)
signer.nip04Encrypt(
msg,
@@ -21,14 +21,14 @@
package com.vitorpamplona.quartz.nip51Lists.encryption
import com.fasterxml.jackson.module.kotlin.readValue
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.signers.NostrSigner
class PrivateTagsInContent {
companion object {
fun decode(content: String) = EventMapper.mapper.readValue<Array<Array<String>>>(content)
fun decode(content: String) = JsonMapper.mapper.readValue<Array<Array<String>>>(content)
fun encode(privateTags: Array<Array<String>>) = EventMapper.mapper.writeValueAsString(privateTags)
fun encode(privateTags: Array<Array<String>>) = JsonMapper.mapper.writeValueAsString(privateTags)
fun decrypt(
content: String,
@@ -25,7 +25,7 @@ import com.vitorpamplona.quartz.EventFactory
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.core.HexKey
import com.vitorpamplona.quartz.nip01Core.crypto.EventHasher
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip59Giftwrap.seals.SealedRumorEvent
class Rumor(
@@ -49,9 +49,9 @@ class Rumor(
}
companion object {
fun fromJson(json: String): Rumor = EventMapper.mapper.readValue(json, Rumor::class.java)
fun fromJson(json: String): Rumor = JsonMapper.mapper.readValue(json, Rumor::class.java)
fun toJson(event: Rumor): String = EventMapper.mapper.writeValueAsString(event)
fun toJson(event: Rumor): String = JsonMapper.mapper.writeValueAsString(event)
fun create(event: Event): Rumor = Rumor(event.id, event.pubKey, event.createdAt, event.kind, event.tags, event.content)
}
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.nip89AppHandlers.definition
import androidx.compose.runtime.Stable
import com.fasterxml.jackson.annotation.JsonProperty
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.utils.bytesUsedInMemory
import com.vitorpamplona.quartz.utils.pointerSizeInBytes
@@ -113,8 +113,8 @@ class AppMetadata {
fun toJson() = assemble(this)
companion object {
fun assemble(data: AppMetadata) = EventMapper.mapper.writeValueAsString(data)
fun assemble(data: AppMetadata) = JsonMapper.mapper.writeValueAsString(data)
fun parse(content: String) = EventMapper.mapper.readValue(content, AppMetadata::class.java)
fun parse(content: String) = JsonMapper.mapper.readValue(content, AppMetadata::class.java)
}
}
@@ -25,7 +25,7 @@ import androidx.compose.runtime.Immutable
import com.fasterxml.jackson.module.kotlin.readValue
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.core.HexKey
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.nip01Core.signers.NostrSigner
import com.vitorpamplona.quartz.nip31Alts.AltTag
import com.vitorpamplona.quartz.nip89AppHandlers.recommendation.AppRecommendationEvent
@@ -59,7 +59,7 @@ class NIP90ContentDiscoveryResponseEvent(
try {
events =
EventMapper.mapper.readValue<Array<Array<String>>>(content).mapNotNull {
JsonMapper.mapper.readValue<Array<Array<String>>>(content).mapNotNull {
if (it.size > 1 && it[0] == "e") {
it[1]
} else {
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.nip01Core.metadata
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.jackson.EventManualSerializer
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import com.vitorpamplona.quartz.utils.nsecToSigner
import org.junit.Assert.assertEquals
import org.junit.Test
@@ -35,7 +35,7 @@ class UpdateMetadataTest {
*/
fun Event.toPrettyJson(): String {
val obj = EventManualSerializer.assemble(id, pubKey, createdAt, kind, tags, content, sig)
return EventMapper.mapper.writerWithDefaultPrettyPrinter().writeValueAsString(obj)
return JsonMapper.mapper.writerWithDefaultPrettyPrinter().writeValueAsString(obj)
}
@Test
@@ -20,14 +20,14 @@
*/
package com.vitorpamplona.quartz.nip46RemoteSigner
import com.vitorpamplona.quartz.nip01Core.jackson.EventMapper
import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper
import org.junit.Test
class BunkerRequestTest {
@Test
fun testBunkerRequestDeSerialization() {
val requestJson = """{"id":"123","method":"sign_event","params":["{\"created_at\":1234,\"kind\":1,\"tags\":[],\"content\":\"This is an unsigned event.\"}"]}"""
val bunkerRequest = EventMapper.mapper.readValue(requestJson, BunkerRequest::class.java)
val bunkerRequest = JsonMapper.mapper.readValue(requestJson, BunkerRequest::class.java)
assert(bunkerRequest is BunkerRequestSign)
assert((bunkerRequest as BunkerRequestSign).event.kind == 1)