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
- Alphabetic
- By Inheritance
- JacksonMigration
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new JacksonMigration()
Abstract Value Members
- 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.
- 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 asObjectNode
andArrayNode
to get access to mutators.- fromVersion
the version of the old data
- json
the old JSON data
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- 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
- 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()
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @HotSpotIntrinsicCandidate() @native()
- 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
- 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
- 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
- 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
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- 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. - final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- 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.
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)
- 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 ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- 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.