CaseClassSerializer

@Internal @SerialVersionUID(7341356073446263475L)
abstract class CaseClassSerializer[T <: Product](clazz: Class[T], scalaFieldSerializers: Array[TypeSerializer[_]]) extends TupleSerializerBase[T] with Cloneable

Serializer for Case Classes. Creation and access is different from our Java Tuples so we have to treat them differently. Copied from Flink 1.14.

trait Cloneable
class TupleSerializerBase[T]
class TypeSerializer[T]
trait Serializable
class Object
trait Matchable
class Any

Value members

Concrete methods

@throws(scala.throws.$lessinit$greater$default$1[java.lang.CloneNotSupportedException])
override protected def clone(): Object
Definition Classes
Object
def copy(from: T, reuse: T): T
def copy(from: T): T
override def createOrReuseInstance(fields: Array[Object], reuse: T): T
Definition Classes
TupleSerializerBase
def deserialize(reuse: T, source: DataInputView): T
def deserialize(source: DataInputView): T
Definition Classes
TypeSerializer
def initArray(): Unit
def serialize(value: T, target: DataOutputView): Unit

Inherited methods

@throws(java.io.IOException)
def copy(x$0: DataInputView, x$1: DataOutputView): Unit
Inherited from:
TupleSerializerBase
def createInstance(x$0: Array[<FromJavaObject>]): T
Inherited from:
TupleSerializerBase
def equals(x$0: <FromJavaObject>): Boolean
Inherited from:
TupleSerializerBase
def getArity(): Int
Inherited from:
TupleSerializerBase
@VisibleForTesting
def getFieldSerializers(): Array[TypeSerializer[<FromJavaObject>]]
Inherited from:
TupleSerializerBase
def getLength(): Int
Inherited from:
TupleSerializerBase
def getTupleClass(): Class[T]
Inherited from:
TupleSerializerBase
def hashCode(): Int
Inherited from:
TupleSerializerBase
def isImmutableType(): Boolean
Inherited from:
TupleSerializerBase
def snapshotConfiguration(): TypeSerializerSnapshot[T]
Inherited from:
TypeSerializer

Concrete fields

@transient
var fields: Array[AnyRef]
@transient