private List<ColumnMetaData> getColumnMetaDataList( JavaTypeFactory typeFactory, RelDataType x, RelDataType jdbcType, List<List<String>> originList) { final List<ColumnMetaData> columns = new ArrayList<>(); for (Ord<RelDataTypeField> pair : Ord.zip(jdbcType.getFieldList())) { final RelDataTypeField field = pair.e; final RelDataType type = field.getType(); final RelDataType fieldType = x.isStruct() ? x.getFieldList().get(pair.i).getType() : type; columns.add( metaData(typeFactory, columns.size(), field.getName(), type, fieldType, originList.get(pair.i))); } return columns; }
private List<ColumnMetaData> getColumnMetaDataList( JavaTypeFactory typeFactory, RelDataType x, RelDataType jdbcType, List<List<String>> originList) { final List<ColumnMetaData> columns = new ArrayList<>(); for (Ord<RelDataTypeField> pair : Ord.zip(jdbcType.getFieldList())) { final RelDataTypeField field = pair.e; final RelDataType type = field.getType(); final RelDataType fieldType = x.isStruct() ? x.getFieldList().get(pair.i).getType() : type; columns.add( metaData(typeFactory, columns.size(), field.getName(), type, fieldType, originList.get(pair.i))); } return columns; }
private List<ColumnMetaData> getColumnMetaDataList( JavaTypeFactory typeFactory, RelDataType x, RelDataType jdbcType, List<List<String>> originList) { final List<ColumnMetaData> columns = new ArrayList<>(); for (Ord<RelDataTypeField> pair : Ord.zip(jdbcType.getFieldList())) { final RelDataTypeField field = pair.e; final RelDataType type = field.getType(); final RelDataType fieldType = x.isStruct() ? x.getFieldList().get(pair.i).getType() : type; columns.add( metaData(typeFactory, columns.size(), field.getName(), type, fieldType, originList.get(pair.i))); } return columns; }
private ColumnMetaData.AvaticaType avaticaType(JavaTypeFactory typeFactory, RelDataType type, RelDataType fieldType) { final String typeName = getTypeName(type); if (type.getComponentType() != null) { final ColumnMetaData.AvaticaType componentType = avaticaType(typeFactory, type.getComponentType(), null); final Type clazz = typeFactory.getJavaClass(type.getComponentType()); final ColumnMetaData.Rep rep = ColumnMetaData.Rep.of(clazz); assert rep != null; return ColumnMetaData.array(componentType, typeName, rep); } else { final int typeOrdinal = getTypeOrdinal(type); switch (typeOrdinal) { case Types.STRUCT: final List<ColumnMetaData> columns = new ArrayList<>(); for (RelDataTypeField field : type.getFieldList()) { columns.add( metaData(typeFactory, field.getIndex(), field.getName(), field.getType(), null, null)); } return ColumnMetaData.struct(columns); default: final Type clazz = typeFactory.getJavaClass(Util.first(fieldType, type)); final ColumnMetaData.Rep rep = ColumnMetaData.Rep.of(clazz); assert rep != null; return ColumnMetaData.scalar(typeOrdinal, typeName, rep); } } }
for (RelDataTypeField field : type.getFieldList()) { columns.add( metaData(typeFactory, field.getIndex(), field.getName(), field.getType(), null, null));
for (RelDataTypeField field : type.getFieldList()) { columns.add( metaData(typeFactory, field.getIndex(), field.getName(), field.getType(), null, null));