Interface SchemaCompatibilityCheck

All Known Implementing Classes:
AvroSchemaCompatibilityCheck, JsonSchemaCompatibilityCheck, KeyValueSchemaCompatibilityCheck, ProtobufNativeSchemaCompatibilityCheck, ProtobufSchemaCompatibilityCheck

public interface SchemaCompatibilityCheck
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    checkCompatible(Iterable<org.apache.pulsar.common.protocol.schema.SchemaData> from, org.apache.pulsar.common.protocol.schema.SchemaData to, org.apache.pulsar.common.policies.data.SchemaCompatibilityStrategy strategy)
     
    void
    checkCompatible(org.apache.pulsar.common.protocol.schema.SchemaData from, org.apache.pulsar.common.protocol.schema.SchemaData to, org.apache.pulsar.common.policies.data.SchemaCompatibilityStrategy strategy)
     
    org.apache.pulsar.common.schema.SchemaType
     
    default boolean
    isCompatible(Iterable<org.apache.pulsar.common.protocol.schema.SchemaData> from, org.apache.pulsar.common.protocol.schema.SchemaData to, org.apache.pulsar.common.policies.data.SchemaCompatibilityStrategy strategy)
     
    default boolean
    isCompatible(org.apache.pulsar.common.protocol.schema.SchemaData from, org.apache.pulsar.common.protocol.schema.SchemaData to, org.apache.pulsar.common.policies.data.SchemaCompatibilityStrategy strategy)
     
  • Field Details

  • Method Details

    • getSchemaType

      org.apache.pulsar.common.schema.SchemaType getSchemaType()
    • checkCompatible

      void checkCompatible(org.apache.pulsar.common.protocol.schema.SchemaData from, org.apache.pulsar.common.protocol.schema.SchemaData to, org.apache.pulsar.common.policies.data.SchemaCompatibilityStrategy strategy) throws IncompatibleSchemaException
      Parameters:
      from - the current schema i.e. schema that the broker has
      to - the future schema i.e. the schema sent by the producer
      strategy - the strategy to use when comparing schemas
      Throws:
      IncompatibleSchemaException
    • checkCompatible

      void checkCompatible(Iterable<org.apache.pulsar.common.protocol.schema.SchemaData> from, org.apache.pulsar.common.protocol.schema.SchemaData to, org.apache.pulsar.common.policies.data.SchemaCompatibilityStrategy strategy) throws IncompatibleSchemaException
      Parameters:
      from - the current schemas i.e. schemas that the broker has
      to - the future schema i.e. the schema sent by the producer
      strategy - the strategy to use when comparing schemas
      Throws:
      IncompatibleSchemaException
    • isCompatible

      default boolean isCompatible(org.apache.pulsar.common.protocol.schema.SchemaData from, org.apache.pulsar.common.protocol.schema.SchemaData to, org.apache.pulsar.common.policies.data.SchemaCompatibilityStrategy strategy)
    • isCompatible

      default boolean isCompatible(Iterable<org.apache.pulsar.common.protocol.schema.SchemaData> from, org.apache.pulsar.common.protocol.schema.SchemaData to, org.apache.pulsar.common.policies.data.SchemaCompatibilityStrategy strategy)