Class ShadowingSerializableDecoder<T>
java.lang.Object
io.deephaven.enterprise.compatibility.shadow.ShadowingSerializableDecoder<T>
- Type Parameters:
T
- - The type of object this decoder will create
- All Implemented Interfaces:
io.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectCodec<T>
,io.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectDecoder<T>
,ObjectCodec<T>
,ObjectDecoder<T>
public class ShadowingSerializableDecoder<T>
extends Object
implements ObjectCodec<T>, io.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectCodec<T>
An
ObjectCodec
implementation for Serializable
object that internally uses a
ShadowingObjectInputStream
to automatically replace detected shadowed classes in the object stream with their
shadowed versions.-
Field Summary
Fields inherited from interface io.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectDecoder
VARIABLE_WIDTH_SENTINEL
Fields inherited from interface io.deephaven.util.codec.ObjectDecoder
VARIABLE_WIDTH_SENTINEL
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
checkWidth
(int actualWidth) decode
(@org.jetbrains.annotations.NotNull byte[] input, int offset, int length) @org.jetbrains.annotations.NotNull byte[]
int
static <T> ShadowingSerializableDecoder<T>
int
int
getScale()
boolean
-
Constructor Details
-
ShadowingSerializableDecoder
-
-
Method Details
-
getInstance
-
encode
- Specified by:
encode
in interfaceio.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectCodec<T>
- Specified by:
encode
in interfaceObjectCodec<T>
-
isNullable
public boolean isNullable()- Specified by:
isNullable
in interfaceio.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectCodec<T>
- Specified by:
isNullable
in interfaceObjectCodec<T>
-
getPrecision
public int getPrecision()- Specified by:
getPrecision
in interfaceio.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectCodec<T>
- Specified by:
getPrecision
in interfaceObjectCodec<T>
-
getScale
public int getScale()- Specified by:
getScale
in interfaceio.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectCodec<T>
- Specified by:
getScale
in interfaceObjectCodec<T>
-
decode
@Nullable public T decode(@NotNull @org.jetbrains.annotations.NotNull byte[] input, int offset, int length) - Specified by:
decode
in interfaceio.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectDecoder<T>
- Specified by:
decode
in interfaceObjectDecoder<T>
-
expectedObjectWidth
public int expectedObjectWidth()- Specified by:
expectedObjectWidth
in interfaceio.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectDecoder<T>
- Specified by:
expectedObjectWidth
in interfaceObjectDecoder<T>
-
checkWidth
- Specified by:
checkWidth
in interfaceio.deephaven.shadow.enterprise.com.illumon.util.codec.ObjectDecoder<T>
- Specified by:
checkWidth
in interfaceObjectDecoder<T>
- Throws:
IllegalArgumentException
-