public class AvroData extends Object
Modifier and Type | Field and Description |
---|---|
static org.apache.avro.Schema |
ANYTHING_SCHEMA |
static org.apache.avro.Schema |
ANYTHING_SCHEMA_MAP_ELEMENT |
static String |
AVRO_TYPE_ANYTHING |
static String |
AVRO_TYPE_ENUM |
static String |
AVRO_TYPE_UNION |
static String |
CONNECT_DEFAULT_VALUE_PROP |
static String |
CONNECT_DOC_PROP |
static String |
CONNECT_ENUM_DOC_PROP |
static String |
CONNECT_INTERNAL_TYPE_NAME |
static String |
CONNECT_NAME_PROP |
static String |
CONNECT_PARAMETERS_PROP |
static String |
CONNECT_RECORD_DOC_PROP |
static String |
CONNECT_TYPE_INT16 |
static String |
CONNECT_TYPE_INT8 |
static String |
CONNECT_TYPE_PROP |
static String |
CONNECT_VERSION_PROP |
static String |
DEFAULT_SCHEMA_FULL_NAME |
static String |
DEFAULT_SCHEMA_NAME |
static String |
KEY_FIELD |
static String |
MAP_ENTRY_TYPE_NAME |
static String |
NAMESPACE |
static String |
VALUE_FIELD |
Constructor and Description |
---|
AvroData(AvroDataConfig avroDataConfig) |
AvroData(int cacheSize) |
Modifier and Type | Method and Description |
---|---|
static List<org.apache.kafka.connect.data.Field> |
fields(org.apache.kafka.connect.data.Schema schema) |
Object |
fromConnectData(org.apache.kafka.connect.data.Schema schema,
Object value)
Convert this object, in Connect data format, into an Avro object.
|
org.apache.avro.Schema |
fromConnectSchema(org.apache.kafka.connect.data.Schema schema) |
org.apache.avro.Schema |
fromConnectSchema(org.apache.kafka.connect.data.Schema schema,
io.apicurio.registry.utils.converter.avro.AvroData.FromConnectContext fromConnectContext,
boolean ignoreOptional)
SchemaMap is a map of already resolved internal schemas, this avoids type re-declaration if a
type is reused, this actually blows up if you don't do this and have a type used in multiple
places.
|
org.apache.avro.Schema |
fromConnectSchema(org.apache.kafka.connect.data.Schema schema,
Map<org.apache.kafka.connect.data.Schema,org.apache.avro.Schema> schemaMap) |
org.apache.avro.Schema |
fromConnectSchemaWithCycle(org.apache.kafka.connect.data.Schema schema,
io.apicurio.registry.utils.converter.avro.AvroData.FromConnectContext fromConnectContext,
boolean ignoreOptional) |
protected boolean |
getForceOptionalDefault() |
static org.apache.kafka.connect.data.Schema |
keySchema(org.apache.kafka.connect.data.Schema schema) |
static org.apache.kafka.connect.data.Schema |
nonOptional(org.apache.kafka.connect.data.Schema schema) |
org.apache.kafka.connect.data.SchemaAndValue |
toConnectData(org.apache.avro.Schema avroSchema,
Object value)
Convert the given object, in Avro format, into a Connect data object.
|
org.apache.kafka.connect.data.SchemaAndValue |
toConnectData(org.apache.avro.Schema avroSchema,
Object value,
Integer version)
Convert the given object, in Avro format, into a Connect data object.
|
org.apache.kafka.connect.data.Schema |
toConnectSchema(org.apache.avro.Schema schema) |
static org.apache.kafka.connect.data.Schema |
valueSchema(org.apache.kafka.connect.data.Schema schema) |
public static final String NAMESPACE
public static final String DEFAULT_SCHEMA_NAME
public static final String DEFAULT_SCHEMA_FULL_NAME
public static final String MAP_ENTRY_TYPE_NAME
public static final String KEY_FIELD
public static final String VALUE_FIELD
public static final String CONNECT_NAME_PROP
public static final String CONNECT_DOC_PROP
public static final String CONNECT_RECORD_DOC_PROP
public static final String CONNECT_ENUM_DOC_PROP
public static final String CONNECT_VERSION_PROP
public static final String CONNECT_DEFAULT_VALUE_PROP
public static final String CONNECT_PARAMETERS_PROP
public static final String CONNECT_INTERNAL_TYPE_NAME
public static final String CONNECT_TYPE_PROP
public static final String CONNECT_TYPE_INT8
public static final String CONNECT_TYPE_INT16
public static final String AVRO_TYPE_UNION
public static final String AVRO_TYPE_ENUM
public static final String AVRO_TYPE_ANYTHING
public static final org.apache.avro.Schema ANYTHING_SCHEMA_MAP_ELEMENT
public static final org.apache.avro.Schema ANYTHING_SCHEMA
public AvroData(int cacheSize)
public AvroData(AvroDataConfig avroDataConfig)
public Object fromConnectData(org.apache.kafka.connect.data.Schema schema, Object value)
public org.apache.avro.Schema fromConnectSchema(org.apache.kafka.connect.data.Schema schema)
public org.apache.avro.Schema fromConnectSchema(org.apache.kafka.connect.data.Schema schema, Map<org.apache.kafka.connect.data.Schema,org.apache.avro.Schema> schemaMap)
public org.apache.avro.Schema fromConnectSchema(org.apache.kafka.connect.data.Schema schema, io.apicurio.registry.utils.converter.avro.AvroData.FromConnectContext fromConnectContext, boolean ignoreOptional)
Also it only holds reference the non-optional schemas as technically an optional is actually a union of null and the non-opitonal, which if used in multiple places some optional some non-optional will cause error as you redefine type.
This is different to the global schema cache which is used to hold/cache fully resolved schemas used to avoid re-resolving when presented with the same source schema.
public org.apache.avro.Schema fromConnectSchemaWithCycle(org.apache.kafka.connect.data.Schema schema, io.apicurio.registry.utils.converter.avro.AvroData.FromConnectContext fromConnectContext, boolean ignoreOptional)
public org.apache.kafka.connect.data.SchemaAndValue toConnectData(org.apache.avro.Schema avroSchema, Object value)
avroSchema
- the Avro schemavalue
- the value to convert into a Connect data objectpublic org.apache.kafka.connect.data.SchemaAndValue toConnectData(org.apache.avro.Schema avroSchema, Object value, Integer version)
avroSchema
- the Avro schemavalue
- the value to convert into a Connect data objectversion
- the version to set on the Connect schema if the avroSchema does not have a
property named "connect.version", may be nullprotected boolean getForceOptionalDefault()
public org.apache.kafka.connect.data.Schema toConnectSchema(org.apache.avro.Schema schema)
public static org.apache.kafka.connect.data.Schema nonOptional(org.apache.kafka.connect.data.Schema schema)
public static List<org.apache.kafka.connect.data.Field> fields(org.apache.kafka.connect.data.Schema schema)
public static org.apache.kafka.connect.data.Schema keySchema(org.apache.kafka.connect.data.Schema schema)
public static org.apache.kafka.connect.data.Schema valueSchema(org.apache.kafka.connect.data.Schema schema)
Copyright © 2020 Red Hat. All rights reserved.