Schema computeAvroSchema() { List<Schema.Field> fields = new ArrayList<Schema.Field>(); for (InferredType it : structTypes) { Schema itS = it.getAvroSchema(); if (itS == null) { continue; } fields.add( new Schema.Field( it.getName(), it.getAvroSchema(), it.getDocString(), it.getDefaultValue())); } Schema s = Schema.createRecord(name, "RECORD", "", false); s.setFields(fields); return s; }