}
private static PortableFieldExtractor getFieldExtractor(Data data, String fieldName,
PortableContext portableContext) {
FieldDefinition fieldDefinition = getFieldDefinition(data, fieldName, portableContext);
int fieldType = fieldDefinition.getType().getId();
if (fieldType < 0 || fieldType >= FIELD_EXTRACTORS.length) {
throw new ArrayIndexOutOfBoundsException("Invalid fieldType: " + fieldType);
}
PortableFieldExtractor fieldExtractor = FIELD_EXTRACTORS[fieldType];