@Override public boolean equals(Object obj) { if (!(obj instanceof Field)) { return false; } Field that = (Field) obj; return Objects.equals(this.name, that.name) && Objects.equals(this.isNullable(), that.isNullable()) && Objects.equals(this.getType(), that.getType()) && Objects.equals(this.getDictionary(), that.getDictionary()) && Objects.equals(this.getMetadata(), that.getMetadata()) && Objects.equals(this.children, that.children); }
@Override public int hashCode() { return Objects.hash(name, isNullable(), getType(), getDictionary(), getMetadata(), children); }
return new Field(field.getName(), new FieldType(field.isNullable(), type, encoding, field.getMetadata()), updatedChildren);
/** * Helper method to ensure backward compatibility with schemas generated prior to ARROW-1347, ARROW-1663. * * @param field the field to check * @param originalChildField original field which name might be mutated * @return original or mutated field */ private static Field mutateOriginalNameIfNeeded(org.apache.arrow.flatbuf.Field field, Field originalChildField) { if ((field.typeType() == Type.List || field.typeType() == Type.FixedSizeList) && originalChildField.getName().equals("[DEFAULT]")) { return new Field(DATA_VECTOR_NAME, originalChildField.isNullable(), originalChildField.getType(), originalChildField.getDictionary(), originalChildField.getChildren(), originalChildField.getMetadata()); } return originalChildField; }
dictionary.getEncoding(), valueField.getMetadata()); Field indexField = new Field(valueField.getName(), indexFieldType, null);
return new Field(field.getName(), new FieldType(field.isNullable(), type, encoding, field.getMetadata()), updatedChildren);
int[] metadataOffsets = new int[getMetadata().size()]; Iterator<Entry<String, String>> metadataIterator = getMetadata().entrySet().iterator(); for (int i = 0; i < metadataOffsets.length; i++) { Entry<String, String> kv = metadataIterator.next();