in src/main/java/com/epam/eco/commons/avro/converter/DefaultAvroConverters.java [370:390]
public Object toAvro(Object value, Schema schema, AvroConverters converters) {
if (value instanceof Map) {
Map<String, Object> valueMap = (Map<String, Object>) value;
validate(valueMap, schema);
GenericRecordBuilder recordBuilder = new GenericRecordBuilder(schema);
for (Map.Entry<String, Object> e: valueMap.entrySet()) {
Field field = schema.getField(e.getKey());
recordBuilder.set(
e.getKey(),
converters.getForSchema(field.schema()).
toAvro(e.getValue(), field.schema(), converters));
}
return recordBuilder.build();
} else {
throw new AvroConversionException(value, schema);
}
}