Fix result toJson

This commit is contained in:
greenart7c3
2025-07-12 07:29:27 -03:00
parent 9e8288acc9
commit be49191293
2 changed files with 44 additions and 1 deletions
+13
View File
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DeviceTable">
<option name="columnSorters">
<list>
<ColumnSorterState>
<option name="column" value="Name" />
<option name="order" value="ASCENDING" />
</ColumnSorterState>
</list>
</option>
</component>
</project>
@@ -21,6 +21,12 @@ import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.navigation.NavController
import com.fasterxml.jackson.core.JsonGenerator
import com.fasterxml.jackson.databind.DeserializationFeature
import com.fasterxml.jackson.databind.SerializerProvider
import com.fasterxml.jackson.databind.module.SimpleModule
import com.fasterxml.jackson.databind.ser.std.StdSerializer
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
import com.greenart7c3.nostrsigner.Amber
import com.greenart7c3.nostrsigner.LocalPreferences
import com.greenart7c3.nostrsigner.R
@@ -125,4 +131,28 @@ data class Result(
val signature: String?,
val result: String?,
val id: String?,
)
) {
companion object {
val mapper =
jacksonObjectMapper()
.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
.registerModule(
SimpleModule().addSerializer(Result::class.java, ResultSerializer()),
)
private class ResultSerializer : StdSerializer<Result>(Result::class.java) {
override fun serialize(
result: Result,
gen: JsonGenerator,
provider: SerializerProvider,
) {
gen.writeStartObject()
gen.writeStringField("id", result.id)
gen.writeStringField("package", result.`package`)
gen.writeStringField("signature", result.signature)
gen.writeStringField("result", result.result)
gen.writeEndObject()
}
}
}
}