From cd1b635b2ae90d9ac2d8b1779183a1fbd8c5fd5c Mon Sep 17 00:00:00 2001 From: vlad Date: Tue, 13 Jun 2017 16:12:20 -0700 Subject: Adding domain entities --- .../driver/pdsuicommon/utils/JsonSerializer.scala | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/main/scala/xyz/driver/pdsuicommon/utils/JsonSerializer.scala (limited to 'src/main/scala/xyz/driver/pdsuicommon/utils/JsonSerializer.scala') diff --git a/src/main/scala/xyz/driver/pdsuicommon/utils/JsonSerializer.scala b/src/main/scala/xyz/driver/pdsuicommon/utils/JsonSerializer.scala new file mode 100644 index 0000000..8c8fd4e --- /dev/null +++ b/src/main/scala/xyz/driver/pdsuicommon/utils/JsonSerializer.scala @@ -0,0 +1,26 @@ +package xyz.driver.pdsuicommon.utils + +import java.text.SimpleDateFormat + +import com.fasterxml.jackson.annotation.JsonInclude +import com.fasterxml.jackson.databind.ObjectMapper +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule +import com.fasterxml.jackson.module.scala.DefaultScalaModule +import com.fasterxml.jackson.module.scala.experimental.ScalaObjectMapper + +object JsonSerializer { + + private val mapper = new ObjectMapper() with ScalaObjectMapper + mapper.registerModule(DefaultScalaModule) + mapper.registerModule(new JavaTimeModule) + mapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")) + mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL) + + def serialize(value: Any): String = { + mapper.writeValueAsString(value) + } + + def deserialize[T](value: String)(implicit m: Manifest[T]): T = { + mapper.readValue(value) + } +} -- cgit v1.2.3