Class AbstractSchema<T>
java.lang.Object
org.apache.pulsar.client.impl.schema.AbstractSchema<T>
- Direct Known Subclasses:
AbstractStructSchema
,BooleanSchema
,ByteBufferSchema
,ByteBufSchema
,ByteSchema
,BytesSchema
,DateSchema
,DoubleSchema
,FloatSchema
,InstantSchema
,IntSchema
,KeyValueSchemaImpl
,LocalDateSchema
,LocalDateTimeSchema
,LocalTimeSchema
,LongSchema
,ShortSchema
,StringSchema
,TimeSchema
,TimestampSchema
-
Field Summary
Fields inherited from interface org.apache.pulsar.client.api.Schema
BOOL, BYTEBUFFER, BYTES, DATE, DOUBLE, FLOAT, INSTANT, INT16, INT32, INT64, INT8, LOCAL_DATE, LOCAL_DATE_TIME, LOCAL_TIME, STRING, TIME, TIMESTAMP
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionSchema<?>
atSchemaVersion
(byte[] schemaVersion) Return an instance of this schema at the given version.clone()
abstract T
decode
(io.netty.buffer.ByteBuf byteBuf) Decode a byteBuf into an object using the schema definition and deserializer implementationdecode
(io.netty.buffer.ByteBuf byteBuf, byte[] schemaVersion) Decode a byteBuf into an object using a given version.Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.pulsar.client.api.Schema
configureSchemaInfo, decode, decode, decode, decode, encode, getNativeSchema, getSchemaInfo, requireFetchingSchemaInfo, setSchemaInfoProvider, supportSchemaVersioning, validate
-
Constructor Details
-
AbstractSchema
public AbstractSchema()
-
-
Method Details
-
decode
Decode a byteBuf into an object using the schema definition and deserializer implementationDo not modify reader/writer index of ByteBuf so, it can be reused to access correct data.
- Parameters:
byteBuf
- the byte buffer to decode- Returns:
- the deserialized object
-
decode
Decode a byteBuf into an object using a given version.- Parameters:
byteBuf
- the byte array to decodeschemaVersion
- the schema version to decode the object. null indicates using latest version.- Returns:
- the deserialized object
-
clone
-
atSchemaVersion
Return an instance of this schema at the given version.- Parameters:
schemaVersion
- the version- Returns:
- the schema at that specific version
- Throws:
SchemaSerializationException
- in case of unknown schema versionNullPointerException
- in case of null schemaVersion and supportSchemaVersioning is true
-