recordMetaData = new RecordMetaData(recordElementName, new ArrayList<FieldMetaData>(), true); } else { List<String> recordDefs = Arrays.asList(fields.split("\\|")); recordMetaDataMap = new HashMap<String, RecordMetaData>(); recordMetaDataMap.put(multiRecordMetaData.getName(), multiRecordMetaData);
/** * public constructor. * * @param name Record name. * @param fields Record fields metadata. * @param wildCardRecord Wildcard record. Accept any fields and generate the * field names based on index. */ public RecordMetaData(String name, List<FieldMetaData> fields, boolean wildCardRecord) { AssertArgument.isNotNullAndNotEmpty(name, "name"); AssertArgument.isNotNull(fields, "fields"); this.name = name.trim(); this.fields = fields; this.wildCardRecord = wildCardRecord; countIgnoredFields(); gatherFieldNames(); }
protected void validateHeader(List<String> headers) throws IOException { if (factory.isMultiTypeRecordSet()) { throw new IOException("Cannot validate the 'header' field of a Multi-Type Record Set. Reader fields definition defines multiple record definitions."); } RecordMetaData recordMetaData = factory.getRecordMetaData(); if (headers == null) { throw new IOException("Null header."); } if (validateHeader(headers, recordMetaData.getFields())) { return; } throw new IOException("Invalid header."); }
List<FieldMetaData> fieldsMetaData = recordMetaData.getFields(); if (factory.strict() && fieldValues.size() < getUnignoredFieldCount(recordMetaData)) { logger.debug("[CORRUPT] Record #" + recordCount + " invalid [" + fieldValues + "]. The record should contain " + fieldsMetaData.size() + " fields [" + recordMetaData.getFieldNames() + "], but contains " + fieldValues.size() + " fields. Ignoring!!"); return nextRecord(); fields.add(new Field(recordMetaData.getFields().get(0).getName(), fieldValues.get(0))); return new Record(recordMetaData.getName(), fields, recordMetaData); } else { int fieldValueOffset = 0; break; if (!recordMetaData.isWildCardRecord() && i > fieldsMetaData.size() - 1) { String value = fieldValues.get(fieldValueIndex); if (recordMetaData.isWildCardRecord() || i > fieldsMetaData.size() - 1) { field = new Field("field_" + i, value); } else { return new Record(recordMetaData.getName(), fields, recordMetaData);
@Override protected void validateHeader(List<String> headers) { // For backward compatibility with pre v1.5.... try { super.validateHeader(headers); } catch (IOException e) { throw new CSVHeaderValidationException(getFactory().getRecordMetaData().getFieldNames(), headers); } } }
/** * Get the unignored field count for the specified record. * * @param recordMetaData The record metadata. * @return The unignored field count. */ public int getUnignoredFieldCount(RecordMetaData recordMetaData) { if (factory.isMultiTypeRecordSet()) { // Need to account for the leading identifier field on each // record... return recordMetaData.getUnignoredFieldCount() + 1; } else { return recordMetaData.getUnignoredFieldCount(); } }
vfRecordMetaData.getRecordMetaData().assertValidFieldName(bindMapKeyField);
return new RecordMetaData(recordName, fieldsMetaData, true); } else { FieldMetaData fieldMetaData; return new RecordMetaData(recordName, fieldsMetaData);
List<FieldMetaData> fieldsMetaData = recordMetaData.getFields(); if (factory.strict() && fieldValues.size() < getUnignoredFieldCount(recordMetaData)) { logger.debug("[CORRUPT] Record #" + recordCount + " invalid [" + fieldValues + "]. The record should contain " + fieldsMetaData.size() + " fields [" + recordMetaData.getFieldNames() + "], but contains " + fieldValues.size() + " fields. Ignoring!!"); return nextRecord(); fields.add(new Field(recordMetaData.getFields().get(0).getName(), fieldValues.get(0))); return new Record(recordMetaData.getName(), fields, recordMetaData); } else { int fieldValueOffset = 0; break; if (!recordMetaData.isWildCardRecord() && i > fieldsMetaData.size() - 1) { String value = fieldValues.get(fieldValueIndex); if (recordMetaData.isWildCardRecord() || i > fieldsMetaData.size() - 1) { field = new Field("field_" + i, value); } else { return new Record(recordMetaData.getName(), fields, recordMetaData);
@Override protected void validateHeader(List<String> headers) { // For backward compatibility with pre v1.5.... try { super.validateHeader(headers); } catch (IOException e) { throw new CSVHeaderValidationException(getFactory().getRecordMetaData().getFieldNames(), headers); } } }
/** * Get the unignored field count for the specified record. * * @param recordMetaData The record metadata. * @return The unignored field count. */ public int getUnignoredFieldCount(RecordMetaData recordMetaData) { if (factory.isMultiTypeRecordSet()) { // Need to account for the leading identifier field on each // record... return recordMetaData.getUnignoredFieldCount() + 1; } else { return recordMetaData.getUnignoredFieldCount(); } }
vfRecordMetaData.getRecordMetaData().assertValidFieldName(bindMapKeyField);
return new RecordMetaData(recordName, fieldsMetaData, true); } else { FieldMetaData fieldMetaData; return new RecordMetaData(recordName, fieldsMetaData);
/** * public constructor. * * @param name Record name. * @param fields Record fields metadata. * @param wildCardRecord Wildcard record. Accept any fields and generate the * field names based on index. */ public RecordMetaData(String name, List<FieldMetaData> fields, boolean wildCardRecord) { AssertArgument.isNotNullAndNotEmpty(name, "name"); AssertArgument.isNotNull(fields, "fields"); this.name = name.trim(); this.fields = fields; this.wildCardRecord = wildCardRecord; countIgnoredFields(); gatherFieldNames(); }
recordMetaData = new RecordMetaData(recordElementName, new ArrayList<FieldMetaData>(), true); } else { List<String> recordDefs = Arrays.asList(fields.split("\\|")); recordMetaDataMap = new HashMap<String, RecordMetaData>(); recordMetaDataMap.put(multiRecordMetaData.getName(), multiRecordMetaData);
protected void validateHeader(List<String> headers) throws IOException { if (factory.isMultiTypeRecordSet()) { throw new IOException("Cannot validate the 'header' field of a Multi-Type Record Set. Reader fields definition defines multiple record definitions."); } RecordMetaData recordMetaData = factory.getRecordMetaData(); if (headers == null) { throw new IOException("Null header."); } if (validateHeader(headers, recordMetaData.getFields())) { return; } throw new IOException("Invalid header."); }
if(recordFields.size() < recordMetaData.getUnignoredFieldCount()) { attrs.addAttribute(XMLConstants.NULL_NS_URI, RECORD_TRUNCATED_ATTR, RECORD_TRUNCATED_ATTR, "xs:boolean", Boolean.TRUE.toString());
private void addFieldBindings(Bean bean) { for (FieldMetaData fieldMetaData : vfRecordMetaData.getRecordMetaData().getFields()) { if (!fieldMetaData.ignore()) { bean.bindTo(fieldMetaData.getName(), recordElementName + "/" + fieldMetaData.getName()); } } }
if(recordFields.size() < recordMetaData.getUnignoredFieldCount()) { attrs.addAttribute(XMLConstants.NULL_NS_URI, RECORD_TRUNCATED_ATTR, RECORD_TRUNCATED_ATTR, "xs:boolean", Boolean.TRUE.toString());
private void addFieldBindings(Bean bean) { for (FieldMetaData fieldMetaData : vfRecordMetaData.getRecordMetaData().getFields()) { if (!fieldMetaData.ignore()) { bean.bindTo(fieldMetaData.getName(), recordElementName + "/" + fieldMetaData.getName()); } } }