mirror of
https://github.com/corda/corda.git
synced 2025-06-21 16:49:45 +00:00
Corda JSON module now created in a separate function to the default mapper.
This commit is contained in:
@ -32,6 +32,24 @@ object JsonSupport {
|
|||||||
mapper.enable(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
|
mapper.enable(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
|
||||||
mapper.enable(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS)
|
mapper.enable(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS)
|
||||||
|
|
||||||
|
mapper.registerModule(createJavaTimeModule())
|
||||||
|
mapper.registerModule(createCordaModule())
|
||||||
|
mapper.registerModule(KotlinModule())
|
||||||
|
return mapper
|
||||||
|
}
|
||||||
|
|
||||||
|
fun createJavaTimeModule(): Module {
|
||||||
|
val timeModule = SimpleModule("java.time")
|
||||||
|
timeModule.apply {
|
||||||
|
addSerializer(LocalDate::class.java, ToStringSerializer)
|
||||||
|
addDeserializer(LocalDate::class.java, LocalDateDeserializer)
|
||||||
|
addKeyDeserializer(LocalDate::class.java, LocalDateKeyDeserializer)
|
||||||
|
addSerializer(LocalDateTime::class.java, ToStringSerializer)
|
||||||
|
}
|
||||||
|
return timeModule
|
||||||
|
}
|
||||||
|
|
||||||
|
fun createCordaModule(): Module {
|
||||||
val cordaModule = SimpleModule("core")
|
val cordaModule = SimpleModule("core")
|
||||||
cordaModule.addSerializer(Party::class.java, PartySerializer)
|
cordaModule.addSerializer(Party::class.java, PartySerializer)
|
||||||
cordaModule.addDeserializer(Party::class.java, PartyDeserializer)
|
cordaModule.addDeserializer(Party::class.java, PartyDeserializer)
|
||||||
@ -56,21 +74,7 @@ object JsonSupport {
|
|||||||
cordaModule.addSerializer(NodeInfo::class.java, NodeInfoSerializer)
|
cordaModule.addSerializer(NodeInfo::class.java, NodeInfoSerializer)
|
||||||
cordaModule.addDeserializer(NodeInfo::class.java, NodeInfoDeserializer)
|
cordaModule.addDeserializer(NodeInfo::class.java, NodeInfoDeserializer)
|
||||||
|
|
||||||
mapper.registerModule(createJavaTimeModule())
|
return cordaModule
|
||||||
mapper.registerModule(cordaModule)
|
|
||||||
mapper.registerModule(KotlinModule())
|
|
||||||
return mapper
|
|
||||||
}
|
|
||||||
|
|
||||||
fun createJavaTimeModule(): Module {
|
|
||||||
val timeModule = SimpleModule("java.time")
|
|
||||||
timeModule.apply {
|
|
||||||
addSerializer(LocalDate::class.java, ToStringSerializer)
|
|
||||||
addDeserializer(LocalDate::class.java, LocalDateDeserializer)
|
|
||||||
addKeyDeserializer(LocalDate::class.java, LocalDateKeyDeserializer)
|
|
||||||
addSerializer(LocalDateTime::class.java, ToStringSerializer)
|
|
||||||
}
|
|
||||||
return timeModule
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class ServiceHubObjectMapper(val identities: IdentityService) : ObjectMapper()
|
class ServiceHubObjectMapper(val identities: IdentityService) : ObjectMapper()
|
||||||
|
Reference in New Issue
Block a user