Skip to content
This repository was archived by the owner on Sep 27, 2022. It is now read-only.

Add jackson-cbor, jackson-smile, jsoniter-scala, and kryo-macros #8

Closed
wants to merge 8 commits into from
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Add Jackson Smile
plokhotnyuk committed Apr 21, 2018

Verified

This commit was signed with the committer’s verified signature.
rochacbruno Bruno Rocha
commit 41adcf458b00b1630e5aa25d83c9a4c1ef621998
1 change: 1 addition & 0 deletions build.sbt
Original file line number Diff line number Diff line change
@@ -30,6 +30,7 @@ lazy val `scala-serialization` = project
"com.fasterxml.jackson.core" % "jackson-databind" % "2.9.5",
"com.fasterxml.jackson.core" % "jackson-core" % "2.9.5",
"com.fasterxml.jackson.dataformat" % "jackson-dataformat-cbor" % "2.9.5",
"com.fasterxml.jackson.dataformat" % "jackson-dataformat-smile" % "2.9.5",
"com.fasterxml.jackson.module" %% "jackson-module-scala" % "2.9.5",
"com.google.protobuf" % "protobuf-java" % "3.0.0",
"com.trueaccord.scalapb" %% "scalapb-runtime" % "0.5.45",
Original file line number Diff line number Diff line change
@@ -235,6 +235,8 @@ class JsoniterScalaBenchmark extends BenchmarkBase(JsoniterScalaConverter)

class JacksonCborBenchmark extends BenchmarkBase(JacksonCborConverter)

class JacksonSmileBenchmark extends BenchmarkBase(JacksonSmileConverter)

class JacksonJsonBenchmark extends BenchmarkBase(JacksonJsonConverter)

class ScalaPbBenchmark extends BenchmarkBase(ScalaPbConverter)
5 changes: 5 additions & 0 deletions scala-serialization/pom.xml
Original file line number Diff line number Diff line change
@@ -55,6 +55,11 @@
<artifactId>jackson-dataformat-cbor</artifactId>
<version>2.9.5</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-smile</artifactId>
<version>2.9.5</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-scala_2.11</artifactId>
Original file line number Diff line number Diff line change
@@ -7,6 +7,7 @@ import com.fasterxml.jackson.databind.Module.SetupContext
import com.fasterxml.jackson.databind._
import com.fasterxml.jackson.databind.module.{SimpleDeserializers, SimpleSerializers}
import com.fasterxml.jackson.dataformat.cbor.{CBORFactory, CBORGenerator}
import com.fasterxml.jackson.dataformat.smile.SmileFactory
import com.fasterxml.jackson.module.scala.DefaultScalaModule
import com.komanov.serialization.domain.{Site, SiteEvent}

@@ -15,6 +16,8 @@ object JacksonJsonConverter extends JacksonConverter(new JsonFactory())

object JacksonCborConverter extends JacksonConverter(new CBORFactory().disable(CBORGenerator.Feature.WRITE_MINIMAL_INTS))

object JacksonSmileConverter extends JacksonConverter(new SmileFactory())

abstract class JacksonConverter(jsonFactory: JsonFactory) extends MyConverter {
private object InstantModule extends Module {
override def getModuleName: String = "Instant"
Original file line number Diff line number Diff line change
@@ -7,6 +7,7 @@ object Converters {
"JsoniterScala" -> JsoniterScalaConverter,
"Jackson CBOR" -> JacksonCborConverter,
"Jackson JSON" -> JacksonJsonConverter,
"Jackson Smile" -> JacksonSmileConverter,
"ScalaPB" -> ScalaPbConverter,
"Java PB" -> JavaPbConverter,
"Java Thrift" -> JavaThriftConverter,
Original file line number Diff line number Diff line change
@@ -16,6 +16,7 @@ class SerializationTest extends SpecificationWithJUnit {
doTest("JsoniterScala", JsoniterScalaConverter)
doTest("Jackson CBOR", JacksonCborConverter)
doTest("Jackson JSON", JacksonJsonConverter)
doTest("Jackson Smile", JacksonSmileConverter)
doTest("ScalaPB", ScalaPbConverter)
doTest("Java Protobuf", JavaPbConverter)
doTest("Java Thrift", JavaThriftConverter)