类 AbstractSchema<T>

java.lang.Object
org.apache.pulsar.client.impl.schema.AbstractSchema<T>
所有已实现的接口:
Cloneable, org.apache.pulsar.client.api.Schema<T>
直接已知子类:
AbstractStructSchema, BooleanSchema, ByteBufferSchema, ByteBufSchema, ByteSchema, BytesSchema, DateSchema, DoubleSchema, FloatSchema, InstantSchema, IntSchema, KeyValueSchemaImpl, LocalDateSchema, LocalDateTimeSchema, LocalTimeSchema, LongSchema, ShortSchema, StringSchema, TimeSchema, TimestampSchema

public abstract class AbstractSchema<T> extends Object implements org.apache.pulsar.client.api.Schema<T>
  • 字段概要

    从接口继承的字段 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
  • 构造器概要

    构造器
    构造器
    说明
     
  • 方法概要

    修饰符和类型
    方法
    说明
    org.apache.pulsar.client.api.Schema<?>
    atSchemaVersion(byte[] schemaVersion)
    Return an instance of this schema at the given version.
    org.apache.pulsar.client.api.Schema<T>
     
    abstract T
    decode(io.netty.buffer.ByteBuf byteBuf)
    Decode a byteBuf into an object using the schema definition and deserializer implementation
    decode(io.netty.buffer.ByteBuf byteBuf, byte[] schemaVersion)
    Decode a byteBuf into an object using a given version.

    从类继承的方法 java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    从接口继承的方法 org.apache.pulsar.client.api.Schema

    configureSchemaInfo, decode, decode, decode, encode, getNativeSchema, getSchemaInfo, requireFetchingSchemaInfo, setSchemaInfoProvider, supportSchemaVersioning, validate
  • 构造器详细资料

    • AbstractSchema

      public AbstractSchema()
  • 方法详细资料

    • decode

      public abstract T decode(io.netty.buffer.ByteBuf byteBuf)
      Decode a byteBuf into an object using the schema definition and deserializer implementation

      Do not modify reader/writer index of ByteBuf so, it can be reused to access correct data.

      参数:
      byteBuf - the byte buffer to decode
      返回:
      the deserialized object
    • decode

      public T decode(io.netty.buffer.ByteBuf byteBuf, byte[] schemaVersion)
      Decode a byteBuf into an object using a given version.
      参数:
      byteBuf - the byte array to decode
      schemaVersion - the schema version to decode the object. null indicates using latest version.
      返回:
      the deserialized object
    • clone

      public org.apache.pulsar.client.api.Schema<T> clone()
      指定者:
      clone 在接口中 org.apache.pulsar.client.api.Schema<T>
      覆盖:
      clone 在类中 Object
    • atSchemaVersion

      public org.apache.pulsar.client.api.Schema<?> atSchemaVersion(byte[] schemaVersion) throws org.apache.pulsar.client.api.SchemaSerializationException
      Return an instance of this schema at the given version.
      参数:
      schemaVersion - the version
      返回:
      the schema at that specific version
      抛出:
      org.apache.pulsar.client.api.SchemaSerializationException - in case of unknown schema version
      NullPointerException - in case of null schemaVersion and supportSchemaVersioning is true