Class RouterBackedSchemaReader
java.lang.Object
com.linkedin.venice.client.schema.RouterBackedSchemaReader
- All Implemented Interfaces:
SchemaReader
,Closeable
,AutoCloseable
-
Field Summary
-
Constructor Summary
ConstructorDescriptionRouterBackedSchemaReader
(InternalAvroStoreClient storeClient, Optional<org.apache.avro.Schema> readerSchema, Optional<Predicate<org.apache.avro.Schema>> preferredSchemaFilter, Duration valueSchemaRefreshPeriod, ICProvider icProvider) RouterBackedSchemaReader
(Supplier<InternalAvroStoreClient> clientSupplier, Optional<org.apache.avro.Schema> readerSchema, Optional<Predicate<org.apache.avro.Schema>> preferredSchemaFilter) RouterBackedSchemaReader
(Supplier<InternalAvroStoreClient> clientSupplier, Optional<org.apache.avro.Schema> readerSchema, Optional<Predicate<org.apache.avro.Schema>> preferredSchemaFilter, ICProvider icProvider) RouterBackedSchemaReader
(Supplier<InternalAvroStoreClient> clientSupplier, Optional<org.apache.avro.Schema> readerSchema, Optional<Predicate<org.apache.avro.Schema>> preferredSchemaFilter, Duration valueSchemaRefreshPeriod) RouterBackedSchemaReader
(Supplier<InternalAvroStoreClient> clientSupplier, Optional<org.apache.avro.Schema> readerSchema, Optional<Predicate<org.apache.avro.Schema>> preferredSchemaFilter, Duration valueSchemaRefreshPeriod, ICProvider icProvider) -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
org.apache.avro.Schema
org.apache.avro.Schema
Get the latest value schema id.org.apache.avro.Schema
getUpdateSchema
(int valueSchemaId) org.apache.avro.Schema
getValueSchema
(int id) int
getValueSchemaId
(org.apache.avro.Schema schema) Return the schema ID of any schema that has the same parsing canonical form as the schema provided.
-
Field Details
-
TYPE_KEY_SCHEMA
- See Also:
-
TYPE_VALUE_SCHEMA
- See Also:
-
TYPE_ALL_VALUE_SCHEMA_IDS
- See Also:
-
TYPE_UPDATE_SCHEMA
- See Also:
-
-
Constructor Details
-
RouterBackedSchemaReader
public RouterBackedSchemaReader(Supplier<InternalAvroStoreClient> clientSupplier, Optional<org.apache.avro.Schema> readerSchema, Optional<Predicate<org.apache.avro.Schema>> preferredSchemaFilter) -
RouterBackedSchemaReader
public RouterBackedSchemaReader(Supplier<InternalAvroStoreClient> clientSupplier, Optional<org.apache.avro.Schema> readerSchema, Optional<Predicate<org.apache.avro.Schema>> preferredSchemaFilter, ICProvider icProvider) -
RouterBackedSchemaReader
-
RouterBackedSchemaReader
public RouterBackedSchemaReader(Supplier<InternalAvroStoreClient> clientSupplier, Optional<org.apache.avro.Schema> readerSchema, Optional<Predicate<org.apache.avro.Schema>> preferredSchemaFilter, Duration valueSchemaRefreshPeriod, ICProvider icProvider) -
RouterBackedSchemaReader
public RouterBackedSchemaReader(InternalAvroStoreClient storeClient, Optional<org.apache.avro.Schema> readerSchema, Optional<Predicate<org.apache.avro.Schema>> preferredSchemaFilter, Duration valueSchemaRefreshPeriod, ICProvider icProvider)
-
-
Method Details
-
getKeySchema
public org.apache.avro.Schema getKeySchema()- Specified by:
getKeySchema
in interfaceSchemaReader
-
getValueSchema
public org.apache.avro.Schema getValueSchema(int id) - Specified by:
getValueSchema
in interfaceSchemaReader
-
getLatestValueSchema
- Specified by:
getLatestValueSchema
in interfaceSchemaReader
- Throws:
VeniceClientException
-
getLatestValueSchemaId
Description copied from interface:SchemaReader
Get the latest value schema id. This may be different from the value schema with the largest id if the superset schema is not the value schema with the largest id- Specified by:
getLatestValueSchemaId
in interfaceSchemaReader
- Throws:
VeniceClientException
-
getValueSchemaId
public int getValueSchemaId(org.apache.avro.Schema schema) Description copied from interface:SchemaReader
Return the schema ID of any schema that has the same parsing canonical form as the schema provided.- Specified by:
getValueSchemaId
in interfaceSchemaReader
- Parameters:
schema
- The schema for which the schema ID is needed- Returns:
- The ID of the schema that has the same parsing canonical form as the schema provided
-
getUpdateSchema
public org.apache.avro.Schema getUpdateSchema(int valueSchemaId) - Specified by:
getUpdateSchema
in interfaceSchemaReader
-
getLatestUpdateSchema
- Specified by:
getLatestUpdateSchema
in interfaceSchemaReader
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-