c

akka.serialization.jackson

JacksonMigration

abstract class JacksonMigration extends AnyRef

Data migration of old formats to current format can be implemented in a concrete subclass and configured to be used by the JacksonSerializer for a changed class.

It is used when deserializing data of older version than the JacksonMigration#currentVersion. You implement the transformation of the JSON structure in the JacksonMigration#transform method. If you have changed the class name you should override JacksonMigration#transformClassName and return current class name.

Source
JacksonMigration.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JacksonMigration
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new JacksonMigration()

Abstract Value Members

  1. abstract def currentVersion: Int

    Define current version, that is, the value used when serializing new data.

    Define current version, that is, the value used when serializing new data. The first version, when no migration was used, is always 1.

  2. abstract def transform(fromVersion: Int, json: JsonNode): JsonNode

    Implement the transformation of the old JSON structure to the new JSON structure.

    Implement the transformation of the old JSON structure to the new JSON structure. The JsonNode is mutable so you can add and remove fields, or change values. Note that you have to cast to specific sub-classes such as ObjectNode and ArrayNode to get access to mutators.

    fromVersion

    the version of the old data

    json

    the old JSON data

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from JacksonMigration toany2stringadd[JacksonMigration] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (JacksonMigration, B)
    Implicit
    This member is added by an implicit conversion from JacksonMigration toArrowAssoc[JacksonMigration] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @HotSpotIntrinsicCandidate() @native()
  8. def ensuring(cond: (JacksonMigration) => Boolean, msg: => Any): JacksonMigration
    Implicit
    This member is added by an implicit conversion from JacksonMigration toEnsuring[JacksonMigration] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  9. def ensuring(cond: (JacksonMigration) => Boolean): JacksonMigration
    Implicit
    This member is added by an implicit conversion from JacksonMigration toEnsuring[JacksonMigration] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: Boolean, msg: => Any): JacksonMigration
    Implicit
    This member is added by an implicit conversion from JacksonMigration toEnsuring[JacksonMigration] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean): JacksonMigration
    Implicit
    This member is added by an implicit conversion from JacksonMigration toEnsuring[JacksonMigration] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  14. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate() @native()
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate() @native()
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  18. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @native()
  19. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @native()
  20. def supportedForwardVersion: Int

    Define the supported forward version this migration can read (must be greater or equal than currentVersion).

    Define the supported forward version this migration can read (must be greater or equal than currentVersion). If this value is different from currentVersion a JacksonMigration may be required to downcast the received payload to the current schema.

  21. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  22. def toString(): String
    Definition Classes
    AnyRef → Any
  23. def transformClassName(fromVersion: Int, className: String): String

    Override this method if you have changed the class name.

    Override this method if you have changed the class name. Return current class name.

  24. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  25. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  26. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

  2. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from JacksonMigration toStringFormat[JacksonMigration] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.12.16) Use formatString.format(value) instead of value.formatted(formatString), or use the f"" string interpolator. In Java 15 and later, formatted resolves to the new method in String which has reversed parameters.

  3. def [B](y: B): (JacksonMigration, B)
    Implicit
    This member is added by an implicit conversion from JacksonMigration toArrowAssoc[JacksonMigration] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromJacksonMigration to any2stringadd[JacksonMigration]

Inherited by implicit conversion StringFormat fromJacksonMigration to StringFormat[JacksonMigration]

Inherited by implicit conversion Ensuring fromJacksonMigration to Ensuring[JacksonMigration]

Inherited by implicit conversion ArrowAssoc fromJacksonMigration to ArrowAssoc[JacksonMigration]

Ungrouped