Excerpt | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||
Types mappingTypes described in the Avro specification have to be mapped to types present in the MediationZone platformsystem. You can find the mapping in the table below:
UDRsThe following UDRs should be used while working with Avro Decoder/Encoder DynamicAvroUDRDynamicAvroUDR is an output of Avro Decoder. The type of “data” filed depends on the schema used for encoding/decoding the payload. All elements in a map can be accessed via key equal to their “name” value in corresponding avro schema The following fields are included in the | ||||||||||||||||||||||||
Field | Description | data (any) | Contains content decoded using decoder
Field | Description |
---|---|
data (bytearray) | This field contains a binary encoded avro message payload. This should be just a message payload without any metadata. |
readerSchemaID (string) | Avro Reader SchemaID - ID of the compatible schema used for reading data |
writerSchemaID (string) | Avro Writer SchemaID - schema used for encoding the message |
DynamicAvroUDR
DynamicAvroUDR is an output of Avro Decoder.
It consists of only one field called data
. The type of data
field depends on a schema used for decoding operation. It can be both primitive or complex type. See https://infozone.atlassian.net/wiki/spaces/MD92/pages/182648833/Avro+Types+and+UDRs#Types-mapping for mapping Avro types to the internal type.
Info |
---|
Example If type of the top element in a schema is |
See Avro Decoder Example to see an example usage of this UDR.
The following fields are included in the DynamicAvroUDR
:
Field | Description |
---|---|
data (any) | Contains content decoded using a decoder |
AvroEncoderUDR
AvroEncoderUDR is used as an input for Avro Encoder.
The following fields are included in the AvroEncoderUDR
:
Field | Description |
---|---|
data (any) | This field contains an a UDR/type to be encoded using a selected schema |
writerSchemaID (string) | Avro Writer SchemaID - schema used for encoding the message |
AvroEnumUDR
AvroEnumUDR is used to represent Enum avro type.
The following fields are included in the AvroEnumUDR
:
Field | Description |
---|---|
fullname (string) | Name of the enum field |
symbol (string) | Selected value of the specific enum type |
AvroFixedUDR
AvroFixedUDR is used to representive Fixed avro type.
The following fields are included in the AvroFixedUDR
:
Field | Description |
---|---|
bytes (bytearray) | Byte value of the field |
fullname (string) | Name of the fixed field |
AvroRecordUDR
AvroRecordUDR is used to represent Avro Record structure.
The following fields are included in the AvroRecordUDR
:
Field | Description |
---|---|
fields (map<string,any>) | Map containing fields of the record. |
fullname (string) | Name of the record including the namespace (example “example.avro.User3”) |