diff --git a/akka-remote/src/test/scala/serialization/Ticket436Spec.scala b/akka-remote/src/test/scala/serialization/Ticket436Spec.scala new file mode 100644 index 0000000000..042f3f07be --- /dev/null +++ b/akka-remote/src/test/scala/serialization/Ticket436Spec.scala @@ -0,0 +1,49 @@ +package se.scalablesolutions.akka.actor.serialization + + +import org.scalatest.Spec +import org.scalatest.matchers.ShouldMatchers +import org.scalatest.BeforeAndAfterAll +import org.scalatest.junit.JUnitRunner +import org.junit.runner.RunWith + +import se.scalablesolutions.akka.serialization.Serializer +import se.scalablesolutions.akka.serialization.Serializable.ScalaJSON +import scala.reflect._ +import scala.annotation.target._ +import sjson.json.JSONTypeHint + +@BeanInfo class MyJsonObject(val key: String, + @(JSONTypeHint @field)(value = classOf[Int]) + val map: Map[String, Int], + val standAloneInt: Int) extends ScalaJSON { + private def this() = this(null, null, -1) + override def toString(): String = try { + val mapValue: Int = map.getOrElse(key, -1) + println("Map value: %s".format(mapValue.asInstanceOf[AnyRef].getClass)) + "Key: %s, Map value: %d, Stand Alone Int: %d".format(key, mapValue, standAloneInt) + } catch { + case e: ClassCastException => e.getMessage + case _ => "Unknown error" + } +} + +@RunWith(classOf[JUnitRunner]) +class Ticket436Spec extends + Spec with + ShouldMatchers with + BeforeAndAfterAll { + + describe("Serialization of Maps containing Int") { + it("should be able to serialize and de-serialize preserving the data types of the Map") { + val key: String = "myKey" + val value: Int = 123 + val standAloneInt: Int = 35 + val message = new MyJsonObject(key, Map(key -> value), standAloneInt) + + val json = message.toJSON + val copy = Serializer.ScalaJSON.fromJSON[MyJsonObject](json) + copy.asInstanceOf[MyJsonObject].map.get("myKey").get.isInstanceOf[Int] should equal(true) + } + } +} diff --git a/embedded-repo/sjson/json/sjson/0.4/sjson-0.4.jar b/embedded-repo/sjson/json/sjson/0.4/sjson-0.4.jar deleted file mode 100644 index dcab322c81..0000000000 Binary files a/embedded-repo/sjson/json/sjson/0.4/sjson-0.4.jar and /dev/null differ diff --git a/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.Beta1/sjson-0.5-SNAPSHOT-2.8.Beta1.jar b/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.Beta1/sjson-0.5-SNAPSHOT-2.8.Beta1.jar deleted file mode 100644 index 4543815742..0000000000 Binary files a/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.Beta1/sjson-0.5-SNAPSHOT-2.8.Beta1.jar and /dev/null differ diff --git a/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.Beta1/sjson-0.5-SNAPSHOT-2.8.Beta1.pom b/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.Beta1/sjson-0.5-SNAPSHOT-2.8.Beta1.pom deleted file mode 100755 index 9c6db30374..0000000000 --- a/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.Beta1/sjson-0.5-SNAPSHOT-2.8.Beta1.pom +++ /dev/null @@ -1,8 +0,0 @@ - - - 4.0.0 - sjson.json - sjson - 0.5-SNAPSHOT-2.8.Beta1 - jar - diff --git a/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.RC2/sjson-0.5-SNAPSHOT-2.8.RC2.jar b/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.RC2/sjson-0.5-SNAPSHOT-2.8.RC2.jar deleted file mode 100644 index 11d149aeee..0000000000 Binary files a/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.RC2/sjson-0.5-SNAPSHOT-2.8.RC2.jar and /dev/null differ diff --git a/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.RC2/sjson-0.5-SNAPSHOT-2.8.RC2.pom b/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.RC2/sjson-0.5-SNAPSHOT-2.8.RC2.pom deleted file mode 100644 index fa80e90e01..0000000000 --- a/embedded-repo/sjson/json/sjson/0.5-SNAPSHOT-2.8.RC2/sjson-0.5-SNAPSHOT-2.8.RC2.pom +++ /dev/null @@ -1,9 +0,0 @@ - - - 4.0.0 - sjson.json - sjson - 0.5-SNAPSHOT-2.8.RC2 - POM was created from install:install-file - diff --git a/embedded-repo/sjson/json/sjson/0.6-SNAPSHOT-2.8.RC3/sjson-0.6-SNAPSHOT-2.8.RC3.jar b/embedded-repo/sjson/json/sjson/0.6-SNAPSHOT-2.8.RC3/sjson-0.6-SNAPSHOT-2.8.RC3.jar deleted file mode 100644 index 5cf971df15..0000000000 Binary files a/embedded-repo/sjson/json/sjson/0.6-SNAPSHOT-2.8.RC3/sjson-0.6-SNAPSHOT-2.8.RC3.jar and /dev/null differ diff --git a/embedded-repo/sjson/json/sjson/0.6-SNAPSHOT-2.8.RC3/sjson-0.6-SNAPSHOT-2.8.RC3.pom b/embedded-repo/sjson/json/sjson/0.6-SNAPSHOT-2.8.RC3/sjson-0.6-SNAPSHOT-2.8.RC3.pom deleted file mode 100644 index 708571fc10..0000000000 --- a/embedded-repo/sjson/json/sjson/0.6-SNAPSHOT-2.8.RC3/sjson-0.6-SNAPSHOT-2.8.RC3.pom +++ /dev/null @@ -1,9 +0,0 @@ - - - 4.0.0 - sjson.json - sjson - 0.6-SNAPSHOT-2.8.RC3 - POM was created from install:install-file - diff --git a/embedded-repo/sjson/json/sjson/0.7-2.8.0/sjson-0.7-2.8.0.pom b/embedded-repo/sjson/json/sjson/0.7-2.8.0/sjson-0.7-2.8.0.pom deleted file mode 100644 index dfc9017dcf..0000000000 --- a/embedded-repo/sjson/json/sjson/0.7-2.8.0/sjson-0.7-2.8.0.pom +++ /dev/null @@ -1,9 +0,0 @@ - - - 4.0.0 - sjson.json - sjson - 0.7-2.8.0 - POM was created from install:install-file - diff --git a/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.0/sjson-0.7-SNAPSHOT-2.8.0.jar b/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.0/sjson-0.7-SNAPSHOT-2.8.0.jar deleted file mode 100644 index f0d321a9e3..0000000000 Binary files a/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.0/sjson-0.7-SNAPSHOT-2.8.0.jar and /dev/null differ diff --git a/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.0/sjson-0.7-SNAPSHOT-2.8.0.pom b/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.0/sjson-0.7-SNAPSHOT-2.8.0.pom deleted file mode 100644 index e8081164fc..0000000000 --- a/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.0/sjson-0.7-SNAPSHOT-2.8.0.pom +++ /dev/null @@ -1,9 +0,0 @@ - - - 4.0.0 - sjson.json - sjson - 0.7-SNAPSHOT-2.8.0 - POM was created from install:install-file - diff --git a/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.RC7/sjson-0.7-SNAPSHOT-2.8.RC7.jar b/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.RC7/sjson-0.7-SNAPSHOT-2.8.RC7.jar deleted file mode 100644 index 6c77d359b4..0000000000 Binary files a/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.RC7/sjson-0.7-SNAPSHOT-2.8.RC7.jar and /dev/null differ diff --git a/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.RC7/sjson-0.7-SNAPSHOT-2.8.RC7.pom b/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.RC7/sjson-0.7-SNAPSHOT-2.8.RC7.pom deleted file mode 100644 index 7c02578f5f..0000000000 --- a/embedded-repo/sjson/json/sjson/0.7-SNAPSHOT-2.8.RC7/sjson-0.7-SNAPSHOT-2.8.RC7.pom +++ /dev/null @@ -1,9 +0,0 @@ - - - 4.0.0 - sjson.json - sjson - 0.7-SNAPSHOT-2.8.RC7 - POM was created from install:install-file - diff --git a/embedded-repo/sjson/json/sjson/0.7-2.8.0/sjson-0.7-2.8.0.jar b/embedded-repo/sjson/json/sjson/0.8-2.8.0/sjson-0.8-2.8.0.jar similarity index 54% rename from embedded-repo/sjson/json/sjson/0.7-2.8.0/sjson-0.7-2.8.0.jar rename to embedded-repo/sjson/json/sjson/0.8-2.8.0/sjson-0.8-2.8.0.jar index e8700f11d3..7dc4a9f66d 100644 Binary files a/embedded-repo/sjson/json/sjson/0.7-2.8.0/sjson-0.7-2.8.0.jar and b/embedded-repo/sjson/json/sjson/0.8-2.8.0/sjson-0.8-2.8.0.jar differ diff --git a/embedded-repo/sjson/json/sjson/0.4/sjson-0.4.pom b/embedded-repo/sjson/json/sjson/0.8-2.8.0/sjson-0.8-2.8.0.pom old mode 100755 new mode 100644 similarity index 92% rename from embedded-repo/sjson/json/sjson/0.4/sjson-0.4.pom rename to embedded-repo/sjson/json/sjson/0.8-2.8.0/sjson-0.8-2.8.0.pom index 784adff55e..51167926f1 --- a/embedded-repo/sjson/json/sjson/0.4/sjson-0.4.pom +++ b/embedded-repo/sjson/json/sjson/0.8-2.8.0/sjson-0.8-2.8.0.pom @@ -3,6 +3,6 @@ 4.0.0 sjson.json sjson - 0.4 + 0.8-2.8.0 jar diff --git a/project/build/AkkaProject.scala b/project/build/AkkaProject.scala index 247252b6e1..90fc49afc2 100644 --- a/project/build/AkkaProject.scala +++ b/project/build/AkkaProject.scala @@ -186,7 +186,7 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { lazy val sbinary = "sbinary" % "sbinary" % "2.8.0-0.3.1" % "compile" - lazy val sjson = "sjson.json" % "sjson" % "0.8-SNAPSHOT-2.8.0" % "compile" + lazy val sjson = "sjson.json" % "sjson" % "0.8-2.8.0" % "compile" lazy val slf4j = "org.slf4j" % "slf4j-api" % SLF4J_VERSION % "compile"