/** Creates a column loader, and performs the load. */ ColumnLoader( JavaTypeFactory typeFactory, Enumerable<T> sourceTable, RelDataType elementType) { this.typeFactory = typeFactory; sourceTable.into(list); final int[] sorts = {-1}; load(elementType, sorts); this.sortField = sorts[0]; }
/** Creates a column loader, and performs the load. * * @param typeFactory Type factory * @param sourceTable Source data * @param protoRowType Logical row type * @param repList Physical row types, or null if not known */ ColumnLoader(JavaTypeFactory typeFactory, Enumerable<T> sourceTable, RelProtoDataType protoRowType, List<ColumnMetaData.Rep> repList) { this.typeFactory = typeFactory; final RelDataType rowType = protoRowType.apply(typeFactory); if (repList == null) { repList = Collections.nCopies(rowType.getFieldCount(), ColumnMetaData.Rep.OBJECT); } sourceTable.into(list); final int[] sorts = {-1}; load(rowType, repList, sorts); this.sortField = sorts[0]; }