diff --git a/akka-remote/src/main/scala/akka/remote/MessageSerializer.scala b/akka-remote/src/main/scala/akka/remote/MessageSerializer.scala index d70b83d987..3258fe3461 100644 --- a/akka-remote/src/main/scala/akka/remote/MessageSerializer.scala +++ b/akka-remote/src/main/scala/akka/remote/MessageSerializer.scala @@ -14,7 +14,6 @@ object MessageSerializer { private def SERIALIZER_JAVA: Serializer.Java = Serializer.Java private def SERIALIZER_JAVA_JSON: Serializer.JavaJSON = Serializer.JavaJSON private def SERIALIZER_SCALA_JSON: Serializer.ScalaJSON = Serializer.ScalaJSON - private def SERIALIZER_SBINARY: Serializer.SBinary = Serializer.SBinary private def SERIALIZER_PROTOBUF: Serializer.Protobuf = Serializer.Protobuf def setClassLoader(cl: ClassLoader) = { @@ -22,7 +21,6 @@ object MessageSerializer { SERIALIZER_JAVA.classLoader = someCl SERIALIZER_JAVA_JSON.classLoader = someCl SERIALIZER_SCALA_JSON.classLoader = someCl - SERIALIZER_SBINARY.classLoader = someCl } def deserialize(messageProtocol: MessageProtocol): Any = { @@ -34,11 +32,6 @@ object MessageSerializer { val clazz = loadManifest(SERIALIZER_PROTOBUF.classLoader, messageProtocol) SERIALIZER_PROTOBUF.fromBinary(messageProtocol.getMessage.toByteArray, Some(clazz)) - case SerializationSchemeType.SBINARY => - val clazz = loadManifest(SERIALIZER_SBINARY.classLoader, messageProtocol) - val renderer = clazz.newInstance.asInstanceOf[Serializable.SBinary[_ <: AnyRef]] - renderer.fromBytes(messageProtocol.getMessage.toByteArray) - case SerializationSchemeType.SCALA_JSON => val clazz = loadManifest(SERIALIZER_SCALA_JSON.classLoader, messageProtocol) val renderer = clazz.newInstance.asInstanceOf[Serializable.ScalaJSON[_]] @@ -60,9 +53,6 @@ object MessageSerializer { } else if (message.isInstanceOf[Serializable.ScalaJSON[_]]) { builder.setSerializationScheme(SerializationSchemeType.SCALA_JSON) setMessageAndManifest(builder, message.asInstanceOf[Serializable.ScalaJSON[_ <: Any]]) - } else if (message.isInstanceOf[Serializable.SBinary[_]]) { - builder.setSerializationScheme(SerializationSchemeType.SBINARY) - setMessageAndManifest(builder, message.asInstanceOf[Serializable.SBinary[_ <: Any]]) } else if (message.isInstanceOf[Serializable.JavaJSON]) { builder.setSerializationScheme(SerializationSchemeType.JAVA_JSON) setMessageAndManifest(builder, message.asInstanceOf[Serializable.JavaJSON]) diff --git a/akka-remote/src/main/scala/akka/serialization/Binary.scala b/akka-remote/src/main/scala/akka/serialization/Binary.scala deleted file mode 100644 index 71d16fac38..0000000000 --- a/akka-remote/src/main/scala/akka/serialization/Binary.scala +++ /dev/null @@ -1,320 +0,0 @@ -/** - * Copyright (C) 2009-2011 Scalable Solutions AB - */ - -package akka.serialization - -import sbinary._ -import sbinary.Operations._ -import sbinary.DefaultProtocol._ - -// --- PRIMITIVES --- -case class BinaryString(val value: String) extends Serializable.SBinary[BinaryString] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]): BinaryString = BinaryString(fromByteArray[String](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigInt(val value: BigInt) extends Serializable.SBinary[BinaryBigInt] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigInt(fromByteArray[BigInt](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigDecimal(val value: BigDecimal) extends Serializable.SBinary[BinaryBigDecimal] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigDecimal(fromByteArray[BigDecimal](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryLong(val value: Long) extends Serializable.SBinary[BinaryLong] { - def this() = this(0L) - def fromBytes(bytes: Array[Byte]) = BinaryLong(fromByteArray[Long](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryInt(val value: Int) extends Serializable.SBinary[BinaryInt] { - def this() = this(0) - def fromBytes(bytes: Array[Byte]) = BinaryInt(fromByteArray[Int](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryDouble(val value: Double) extends Serializable.SBinary[BinaryDouble] { - def this() = this(0.0D) - def fromBytes(bytes: Array[Byte]) = BinaryDouble(fromByteArray[Double](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryFloat(val value: Float) extends Serializable.SBinary[BinaryFloat] { - def this() = this(0.0F) - def fromBytes(bytes: Array[Byte]) = BinaryFloat(fromByteArray[Float](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBoolean(val value: Boolean) extends Serializable.SBinary[BinaryBoolean] { - def this() = this(true) - def fromBytes(bytes: Array[Byte]) = BinaryBoolean(fromByteArray[Boolean](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryByte(val value: Byte) extends Serializable.SBinary[BinaryByte] { - def this() = this(0x00) - def fromBytes(bytes: Array[Byte]) = BinaryByte(fromByteArray[Byte](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryChar(val value: Char) extends Serializable.SBinary[BinaryChar] { - def this() = this(' ') - def fromBytes(bytes: Array[Byte]) = BinaryChar(fromByteArray[Char](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} - -// --- ARRAYS --- -case class BinaryStringArray(val value: Array[String]) extends Serializable.SBinary[BinaryStringArray] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringArray(fromByteArray[Array[String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigIntArray(val value: Array[BigInt]) extends Serializable.SBinary[BinaryBigIntArray] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigIntArray(fromByteArray[Array[BigInt]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigDecimalArray(val value: Array[BigDecimal]) extends Serializable.SBinary[BinaryBigDecimalArray] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigDecimalArray(fromByteArray[Array[BigDecimal]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryIntArray(val value: Array[Int]) extends Serializable.SBinary[BinaryIntArray] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryIntArray(fromByteArray[Array[Int]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryLongArray(val value: Array[Long]) extends Serializable.SBinary[BinaryLongArray] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryLongArray(fromByteArray[Array[Long]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryDoubleArray(val value: Array[Double]) extends Serializable.SBinary[BinaryDoubleArray] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryDoubleArray(fromByteArray[Array[Double]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryFloatArray(val value: Array[Float]) extends Serializable.SBinary[BinaryFloatArray] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryFloatArray(fromByteArray[Array[Float]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBooleanArray(val value: Array[Boolean]) extends Serializable.SBinary[BinaryBooleanArray] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBooleanArray(fromByteArray[Array[Boolean]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryByteArray(val value: Array[Byte]) extends Serializable.SBinary[BinaryByteArray] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryByteArray(fromByteArray[Array[Byte]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -/*case class BinaryClassArray(val value: Array[Class[_]]) extends Serializable.SBinary[BinaryClassArray] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryClassArray(fromByteArray[Array[Class[_]]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -}*/ - -// --- LISTS --- -case class BinaryStringList(val value: List[String]) extends Serializable.SBinary[BinaryStringList] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringList(fromByteArray[List[String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigIntList(val value: List[BigInt]) extends Serializable.SBinary[BinaryBigIntList] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigIntList(fromByteArray[List[BigInt]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigDecimalList(val value: List[BigDecimal]) extends Serializable.SBinary[BinaryBigDecimalList] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigDecimalList(fromByteArray[List[BigDecimal]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryLongList(val value: List[Long]) extends Serializable.SBinary[BinaryLongList] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryLongList(fromByteArray[List[Long]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryIntList(val value: List[Int]) extends Serializable.SBinary[BinaryIntList] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryIntList(fromByteArray[List[Int]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryDoubleList(val value: List[Double]) extends Serializable.SBinary[BinaryDoubleList] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryDoubleList(fromByteArray[List[Double]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryFloatList(val value: List[Float]) extends Serializable.SBinary[BinaryFloatList] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryFloatList(fromByteArray[List[Float]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBooleanList(val value: List[Boolean]) extends Serializable.SBinary[BinaryBooleanList] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBooleanList(fromByteArray[List[Boolean]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryClassList(val value: List[Class[_]]) extends Serializable.SBinary[BinaryClassList] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryClassList(fromByteArray[List[Class[_]]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} - -// --- TUPLES --- -case class BinaryStringStringTuple(val value: Tuple2[String, String]) extends Serializable.SBinary[BinaryStringStringTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringStringTuple(fromByteArray[Tuple2[String, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigIntBigIntTuple(val value: Tuple2[BigInt, BigInt]) extends Serializable.SBinary[BinaryBigIntBigIntTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigIntBigIntTuple(fromByteArray[Tuple2[BigInt, BigInt]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigDecimalBigDecimalTuple(val value: Tuple2[BigDecimal, BigDecimal]) extends Serializable.SBinary[BinaryBigDecimalBigDecimalTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigDecimalBigDecimalTuple(fromByteArray[Tuple2[BigDecimal, BigDecimal]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryLongLongTuple(val value: Tuple2[Long, Long]) extends Serializable.SBinary[BinaryLongLongTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryLongLongTuple(fromByteArray[Tuple2[Long, Long]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryIntIntTuple(val value: Tuple2[Int, Int]) extends Serializable.SBinary[BinaryIntIntTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryIntIntTuple(fromByteArray[Tuple2[Int, Int]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryDoubleDoubleTuple(val value: Tuple2[Double, Double]) extends Serializable.SBinary[BinaryDoubleDoubleTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryDoubleDoubleTuple(fromByteArray[Tuple2[Double, Double]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryFloatFloatTuple(val value: Tuple2[Float, Float]) extends Serializable.SBinary[BinaryFloatFloatTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryFloatFloatTuple(fromByteArray[Tuple2[Float, Float]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBooleanBooleanTuple(val value: Tuple2[Boolean, Boolean]) extends Serializable.SBinary[BinaryBooleanBooleanTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBooleanBooleanTuple(fromByteArray[Tuple2[Boolean, Boolean]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryClassClassTuple(val value: Tuple2[Class[_], Class[_]]) extends Serializable.SBinary[BinaryClassClassTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryClassClassTuple(fromByteArray[Tuple2[Class[_], Class[_]]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryByteArrayByteArrayTuple(val value: Tuple2[Array[Byte], Array[Byte]]) extends Serializable.SBinary[BinaryByteArrayByteArrayTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryByteArrayByteArrayTuple(fromByteArray[Tuple2[Array[Byte], Array[Byte]]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigIntStringTuple(val value: Tuple2[BigInt, String]) extends Serializable.SBinary[BinaryBigIntStringTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigIntStringTuple(fromByteArray[Tuple2[BigInt, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigDecimalStringTuple(val value: Tuple2[BigDecimal, String]) extends Serializable.SBinary[BinaryBigDecimalStringTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigDecimalStringTuple(fromByteArray[Tuple2[BigDecimal, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryLongStringTuple(val value: Tuple2[Long, String]) extends Serializable.SBinary[BinaryLongStringTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryLongStringTuple(fromByteArray[Tuple2[Long, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryIntStringTuple(val value: Tuple2[Int, String]) extends Serializable.SBinary[BinaryIntStringTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryIntStringTuple(fromByteArray[Tuple2[Int, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryDoubleStringTuple(val value: Tuple2[Double, String]) extends Serializable.SBinary[BinaryDoubleStringTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryDoubleStringTuple(fromByteArray[Tuple2[Double, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryFloatStringTuple(val value: Tuple2[Float, String]) extends Serializable.SBinary[BinaryFloatStringTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryFloatStringTuple(fromByteArray[Tuple2[Float, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBooleanStringTuple(val value: Tuple2[Boolean, String]) extends Serializable.SBinary[BinaryBooleanStringTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBooleanStringTuple(fromByteArray[Tuple2[Boolean, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryClassStringTuple(val value: Tuple2[Class[_], String]) extends Serializable.SBinary[BinaryClassStringTuple] { - import sbinary.DefaultProtocol._ - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryClassStringTuple(fromByteArray[Tuple2[Class[_], String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryStringByteArrayTuple(val value: Tuple2[String, Array[Byte]]) extends Serializable.SBinary[BinaryStringByteArrayTuple] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringByteArrayTuple(fromByteArray[Tuple2[String, Array[Byte]]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} - -// --- MAPS --- -case class BinaryStringStringMap(val value: Map[String, String]) extends Serializable.SBinary[BinaryStringStringMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringStringMap(fromByteArray[Map[String, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigIntStringMap(val value: Map[BigInt, String]) extends Serializable.SBinary[BinaryBigIntStringMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigIntStringMap(fromByteArray[Map[BigInt, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryBigDecimalStringMap(val value: Map[BigDecimal, String]) extends Serializable.SBinary[BinaryBigDecimalStringMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryBigDecimalStringMap(fromByteArray[Map[BigDecimal, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryLongStringMap(val value: Map[Long, String]) extends Serializable.SBinary[BinaryLongStringMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryLongStringMap(fromByteArray[Map[Long, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryIntStringMap(val value: Map[Int, String]) extends Serializable.SBinary[BinaryIntStringMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryIntStringMap(fromByteArray[Map[Int, String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryClassStringMap(val value: Map[Class[_], String]) extends Serializable.SBinary[BinaryClassStringMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryClassStringMap(fromByteArray[Map[Class[_], String]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryStringBigIntMap(val value: Map[String, BigInt]) extends Serializable.SBinary[BinaryStringBigIntMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringBigIntMap(fromByteArray[Map[String, BigInt]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryStringBigDecimalMap(val value: Map[String, BigDecimal]) extends Serializable.SBinary[BinaryStringBigDecimalMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringBigDecimalMap(fromByteArray[Map[String, BigDecimal]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryStringLongMap(val value: Map[String, Long]) extends Serializable.SBinary[BinaryStringLongMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringLongMap(fromByteArray[Map[String, Long]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryStringIntMap(val value: Map[String, Int]) extends Serializable.SBinary[BinaryStringIntMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringIntMap(fromByteArray[Map[String, Int]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryStringClassMap(val value: Map[String, Class[_]]) extends Serializable.SBinary[BinaryStringClassMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringClassMap(fromByteArray[Map[String, Class[_]]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} -case class BinaryStringByteArrayMap(val value: Map[String, Array[Byte]]) extends Serializable.SBinary[BinaryStringByteArrayMap] { - def this() = this(null) - def fromBytes(bytes: Array[Byte]) = BinaryStringByteArrayMap(fromByteArray[Map[String, Array[Byte]]](bytes)) - def toBytes: Array[Byte] = toByteArray(value) -} diff --git a/akka-remote/src/main/scala/akka/serialization/Serializable.scala b/akka-remote/src/main/scala/akka/serialization/Serializable.scala index c3564240ad..4b368078ae 100644 --- a/akka-remote/src/main/scala/akka/serialization/Serializable.scala +++ b/akka-remote/src/main/scala/akka/serialization/Serializable.scala @@ -28,37 +28,6 @@ trait Serializable { */ object Serializable { - /** - * Example on how to use the SBinary serialization protocol: - *
-   * case class User(val usernamePassword: Tuple2[String, String],
-   *                 val email: String,
-   *                 val age: Int)
-   *   extends Serializable.SBinary[User] {
-   *   def this() = this(null, null, 0)
-   *   import sbinary.DefaultProtocol._
-   *   implicit object UserFormat extends Format[User] {
-   *     def reads(in : Input) = User(
-   *       read[Tuple2[String, String]](in),
-   *       read[String](in),
-   *       read[Int](in))
-   *     def writes(out: Output, value: User) = {
-   *       write[Tuple2[String, String]](out, value.usernamePassword)
-   *       write[String](out, value.email)
-   *       write[Int](out, value.age)
-   *     }
-   *   }
-   *   def fromBytes(bytes: Array[Byte]) = fromByteArray[User](bytes)
-   *   def toBytes: Array[Byte] = toByteArray(this)
-   * }
-   * 
- * @author Jonas Bonér - */ - trait SBinary[T <: AnyRef] extends Serializable { - def fromBytes(bytes: Array[Byte]): T - def toBytes: Array[Byte] - } - /** * @author Jonas Bonér */ diff --git a/akka-remote/src/main/scala/akka/serialization/Serializer.scala b/akka-remote/src/main/scala/akka/serialization/Serializer.scala index 7fb8736010..3a292e0de0 100644 --- a/akka-remote/src/main/scala/akka/serialization/Serializer.scala +++ b/akka-remote/src/main/scala/akka/serialization/Serializer.scala @@ -31,7 +31,6 @@ class SerializerFactory { def getJava: Java.type = Java def getJavaJSON: JavaJSON.type = JavaJSON def getScalaJSON: ScalaJSON.type = ScalaJSON - def getSBinary: SBinary.type = SBinary def getProtobuf: Protobuf.type = Protobuf } @@ -157,23 +156,5 @@ object Serializer { } } object ScalaJSON extends ScalaJSON - - /** - * @author Jonas Bonér - */ - object SBinary extends SBinary - class SBinary { - import sbinary._ - import sbinary.Operations._ - import sbinary.DefaultProtocol._ - - var classLoader: Option[ClassLoader] = None - - def deepClone[T <: AnyRef](obj: T)(implicit w : Writes[T], r : Reads[T]): T = fromBinary[T](toBinary[T](obj), None) - - def toBinary[T](t : T)(implicit bin : Writes[T]): Array[Byte] = toByteArray[T](t) - - def fromBinary[T](array : Array[Byte], clazz: Option[Class[T]])(implicit bin : Reads[T]): T = fromByteArray[T](array) - } } diff --git a/akka-remote/src/test/scala/Messages.scala b/akka-remote/src/test/scala/Messages.scala index bb7e8cdbfc..8b7011c635 100644 --- a/akka-remote/src/test/scala/Messages.scala +++ b/akka-remote/src/test/scala/Messages.scala @@ -4,30 +4,9 @@ package akka -import akka.serialization.Serializable -import sbinary._ -import sbinary.Operations._ - case class User(val usernamePassword: Tuple2[String, String], val email: String, - val age: Int) - extends Serializable.SBinary[User] { - def this() = this(null, null, 0) - import sbinary.DefaultProtocol._ - implicit object UserFormat extends Format[User] { - def reads(in : Input) = User( - read[Tuple2[String, String]](in), - read[String](in), - read[Int](in)) - def writes(out: Output, value: User) = { - write[Tuple2[String, String]](out, value.usernamePassword) - write[String](out, value.email) - write[Int](out, value.age) - } - } - def fromBytes(bytes: Array[Byte]) = fromByteArray[User](bytes) - def toBytes: Array[Byte] = toByteArray(this) -} + val age: Int) extends java.io.Serializable case object RemotePing extends TestMessage case object RemotePong extends TestMessage diff --git a/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala b/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala index f97ea75841..4026418d18 100644 --- a/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala +++ b/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala @@ -5,7 +5,6 @@ package akka.actor.remote import java.util.concurrent.{LinkedBlockingQueue, TimeUnit, BlockingQueue} -import akka.serialization.BinaryString import akka.config.Supervision._ import akka.OneWay import org.scalatest._ @@ -26,14 +25,14 @@ object Log { @serializable class RemotePingPong1Actor extends Actor { def receive = { - case BinaryString("Ping") => + case "Ping" => Log.messageLog.put("ping") self.reply("pong") case OneWay => Log.oneWayLog.put("oneway") - case BinaryString("Die") => + case "Die" => throw new RuntimeException("Expected exception; to test fault-tolerance") } @@ -44,10 +43,10 @@ object Log { @serializable class RemotePingPong2Actor extends Actor { def receive = { - case BinaryString("Ping") => + case "Ping" => Log.messageLog.put("ping") self.reply("pong") - case BinaryString("Die") => + case "Die" => throw new RuntimeException("Expected exception; to test fault-tolerance") } @@ -58,10 +57,10 @@ object Log { @serializable class RemotePingPong3Actor extends Actor { def receive = { - case BinaryString("Ping") => + case "Ping" => Log.messageLog.put("ping") self.reply("pong") - case BinaryString("Die") => + case "Die" => throw new RuntimeException("Expected exception; to test fault-tolerance") } @@ -84,7 +83,7 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { Log.messageLog.clear val sup = getSingleActorAllForOneSupervisor - (pingpong1 !! BinaryString("Ping")) must equal (Some("pong")) + (pingpong1 !! "Ping") must equal (Some("pong")) } "StartServerForNestedSupervisorHierarchy" in { @@ -92,14 +91,14 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { val sup = getNestedSupervisorsAllForOneConf sup.start - (pingpong1 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong1 !! ("Ping", 5000)) must equal (Some("pong")) } "killSingleActorOneForOne" in { clearMessageLogs val sup = getSingleActorOneForOneSupervisor - (pingpong1 !!! (BinaryString("Die"), 5000)).await.exception.isDefined must be (true) + (pingpong1 !!! ("Die", 5000)).await.exception.isDefined must be (true) messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") } @@ -108,14 +107,14 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { clearMessageLogs val sup = getSingleActorOneForOneSupervisor - (pingpong1 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong1 !! ("Ping", 5000)) must equal (Some("pong")) messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") - (pingpong1 !!! (BinaryString("Die"), 5000)).await.exception.isDefined must be (true) + (pingpong1 !!! ("Die", 5000)).await.exception.isDefined must be (true) messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") - (pingpong1 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong1 !! ("Ping", 5000)) must equal (Some("pong")) messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") } @@ -124,7 +123,7 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { clearMessageLogs val sup = getSingleActorAllForOneSupervisor - (pingpong1 !!! (BinaryString("Die"), 5000)).await.exception.isDefined must be (true) + (pingpong1 !!! ("Die", 5000)).await.exception.isDefined must be (true) messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") } @@ -133,15 +132,15 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { clearMessageLogs val sup = getSingleActorAllForOneSupervisor - (pingpong1 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong1 !! ("Ping", 5000)) must equal (Some("pong")) messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") - (pingpong1 !!! (BinaryString("Die"), 5000)).await.exception.isDefined must be (true) + (pingpong1 !!! ("Die", 5000)).await.exception.isDefined must be (true) messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") - (pingpong1 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong1 !! ("Ping", 5000)) must equal (Some("pong")) messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") } @@ -150,7 +149,7 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { clearMessageLogs val sup = getMultipleActorsOneForOneConf - (pingpong1 !!! (BinaryString("Die"), 5000)).await.exception.isDefined must be (true) + (pingpong1 !!! ("Die", 5000)).await.exception.isDefined must be (true) messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") } @@ -159,21 +158,21 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { clearMessageLogs val sup = getMultipleActorsOneForOneConf - (pingpong1 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) - (pingpong2 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) - (pingpong3 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong1 !! ("Ping", 5000)) must equal (Some("pong")) + (pingpong2 !! ("Ping", 5000)) must equal (Some("pong")) + (pingpong3 !! ("Ping", 5000)) must equal (Some("pong")) messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") - (pingpong2 !!! (BinaryString("Die"), 5000)).await.exception.isDefined must be (true) + (pingpong2 !!! ("Die", 5000)).await.exception.isDefined must be (true) messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") - (pingpong1 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) - (pingpong2 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) - (pingpong3 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong1 !! ("Ping", 5000)) must equal (Some("pong")) + (pingpong2 !! ("Ping", 5000)) must equal (Some("pong")) + (pingpong3 !! ("Ping", 5000)) must equal (Some("pong")) messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") @@ -184,7 +183,7 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { clearMessageLogs val sup = getMultipleActorsAllForOneConf - (pingpong2 !!! (BinaryString("Die"), 5000)).await.exception.isDefined must be (true) + (pingpong2 !!! ("Die", 5000)).await.exception.isDefined must be (true) messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") @@ -195,23 +194,23 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { clearMessageLogs val sup = getMultipleActorsAllForOneConf - pingpong1 !! (BinaryString("Ping"), 5000) must equal (Some("pong")) - pingpong2 !! (BinaryString("Ping"), 5000) must equal (Some("pong")) - pingpong3 !! (BinaryString("Ping"), 5000) must equal (Some("pong")) + pingpong1 !! ("Ping", 5000) must equal (Some("pong")) + pingpong2 !! ("Ping", 5000) must equal (Some("pong")) + pingpong3 !! ("Ping", 5000) must equal (Some("pong")) messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") - (pingpong2 !!! (BinaryString("Die"), 5000)).await.exception.isDefined must be (true) + (pingpong2 !!! ("Die", 5000)).await.exception.isDefined must be (true) messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") messageLog.poll(5, TimeUnit.SECONDS) must equal ("Expected exception; to test fault-tolerance") - pingpong1 !! (BinaryString("Ping"), 5000) must equal (Some("pong")) - pingpong2 !! (BinaryString("Ping"), 5000) must equal (Some("pong")) - pingpong3 !! (BinaryString("Ping"), 5000) must equal (Some("pong")) + pingpong1 !! ("Ping", 5000) must equal (Some("pong")) + pingpong2 !! ("Ping", 5000) must equal (Some("pong")) + pingpong3 !! ("Ping", 5000) must equal (Some("pong")) messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") messageLog.poll(5, TimeUnit.SECONDS) must equal ("ping") @@ -332,7 +331,7 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { val sup = getMultipleActorsOneForOneConf intercept[RuntimeException] { - pingpong3 !! (BinaryString("Die"), 5000) + pingpong3 !! ("Die", 5000) } expect("Expected exception; to test fault-tolerance") { @@ -347,7 +346,7 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { clearMessageLogs val sup = getSingleActorOneForOneSupervisor - pingpong1 ! BinaryString("Die") + pingpong1 ! "Die" expect("Expected exception; to test fault-tolerance") { messageLog.poll(5, TimeUnit.SECONDS) @@ -363,7 +362,7 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { expect("oneway") { oneWayLog.poll(5, TimeUnit.SECONDS) } - pingpong1 ! BinaryString("Die") + pingpong1 ! "Die" expect("Expected exception; to test fault-tolerance") { messageLog.poll(5, TimeUnit.SECONDS) @@ -381,15 +380,15 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { expect("pong") { - (pingpong1 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong1 !! ("Ping", 5000)) must equal (Some("pong")) } expect("pong") { - (pingpong2 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong2 !! ("Ping", 5000)) must equal (Some("pong")) } expect("pong") { - (pingpong3 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong3 !! ("Ping", 5000)) must equal (Some("pong")) } expect("ping") { @@ -402,7 +401,7 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { messageLog.poll(5, TimeUnit.SECONDS) } intercept[RuntimeException] { - pingpong2 !! (BinaryString("Die"), 5000) + pingpong2 !! ("Die", 5000) } expect("Expected exception; to test fault-tolerance") { @@ -415,15 +414,15 @@ class RemoteSupervisorSpec extends AkkaRemoteTest { messageLog.poll(5, TimeUnit.SECONDS) } expect("pong") { - (pingpong1 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong1 !! ("Ping", 5000)) must equal (Some("pong")) } expect("pong") { - (pingpong2 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong2 !! ("Ping", 5000)) must equal (Some("pong")) } expect("pong") { - (pingpong3 !! (BinaryString("Ping"), 5000)) must equal (Some("pong")) + (pingpong3 !! ("Ping", 5000)) must equal (Some("pong")) } expect("ping") { diff --git a/akka-sbt-plugin/src/main/scala/AkkaProject.scala b/akka-sbt-plugin/src/main/scala/AkkaProject.scala index 10660639d0..fdecf65276 100644 --- a/akka-sbt-plugin/src/main/scala/AkkaProject.scala +++ b/akka-sbt-plugin/src/main/scala/AkkaProject.scala @@ -33,7 +33,6 @@ trait AkkaBaseProject extends BasicScalaProject { val memcachedModuleConfig = ModuleConfiguration("spy", "memcached", AkkaRepo) val netLagModuleConfig = ModuleConfiguration("net.lag", AkkaRepo) val redisModuleConfig = ModuleConfiguration("com.redis", AkkaRepo) - val sbinaryModuleConfig = ModuleConfiguration("sbinary", AkkaRepo) val sjsonModuleConfig = ModuleConfiguration("sjson.json", AkkaRepo) val triforkModuleConfig = ModuleConfiguration("com.trifork", AkkaRepo) val vscaladocModuleConfig = ModuleConfiguration("org.scala-tools", "vscaladoc", "1.1-md-3", AkkaRepo) diff --git a/project/build/AkkaProject.scala b/project/build/AkkaProject.scala index 90443f4049..1f63908e9e 100644 --- a/project/build/AkkaProject.scala +++ b/project/build/AkkaProject.scala @@ -155,8 +155,6 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { lazy val protobuf = "com.google.protobuf" % "protobuf-java" % "2.3.0" % "compile" //New BSD - lazy val sbinary = "sbinary" % "sbinary" % "2.8.0-0.3.1" % "compile" //MIT - lazy val sjson = "net.debasishg" % "sjson_2.8.1" % "0.9.1" % "compile" //ApacheV2 lazy val sjson_test = "net.debasishg" % "sjson_2.8.1" % "0.9.1" % "test" //ApacheV2 @@ -330,7 +328,6 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { val jackson_core = Dependencies.jackson_core val netty = Dependencies.netty val protobuf = Dependencies.protobuf - val sbinary = Dependencies.sbinary val sjson = Dependencies.sjson // testing