private TimeSeriesRowModel conformToRowData()

in backup-core/src/main/java/org/apache/iotdb/backup/core/service/ExportPipelineService.java [426:465]


  private TimeSeriesRowModel conformToRowData(
      List<IField>[] lists,
      List<List<TimeseriesModel>> groupTimeseriesList,
      DeviceModel deviceModel,
      Long timestamp) {
    TimeSeriesRowModel model = new TimeSeriesRowModel();
    model.setDeviceModel(deviceModel);
    model.setTimestamp(String.valueOf(timestamp));
    for (int i = 0; i < groupTimeseriesList.size(); i++) {
      List<TimeseriesModel> timeseriesList = groupTimeseriesList.get(i);
      Map<String, TSDataType> dataTypeMap =
          timeseriesList.stream().collect(Collectors.toMap(s -> s.getName(), s -> s.getType()));
      if (model.getIFieldList() == null) {
        model.setIFieldList(new ArrayList<>());
      }
      if (lists[i] != null) {
        // 解决查询出来的数据  不带tsDataType问题
        lists[i].stream()
            .forEach(
                iField -> {
                  TSDataType type = dataTypeMap.get(iField.getColumnName());
                  iField.setTsDataType(type);
                });
        model.getIFieldList().addAll(lists[i]);
      } else {
        List<IField> fillingEmptyIFieldList =
            timeseriesList.stream()
                .map(
                    s -> {
                      IField iField = new IField();
                      iField.setColumnName(s.getName());
                      iField.setTsDataType(s.getType());
                      return iField;
                    })
                .collect(Collectors.toList());
        model.getIFieldList().addAll(fillingEmptyIFieldList);
      }
    }
    return model;
  }