private void getTimeseries()

in backup-core/src/main/java/org/apache/iotdb/backup/core/service/CsvFileValidationService.java [204:240]


  private void getTimeseries(
      CsvFileTransParser parser,
      CSVRecord record,
      List<String> timeseries,
      Map<String, String> headMap) {

    List<String> headerNames = parser.csvParser.getHeaderNames();
    HashMap<String, TSDataType> headerTypeMap = new HashMap<>();
    HashMap<String, String> headerNameMap = new HashMap<>();
    parser.parseHeaders(headerNames, headerTypeMap, headerNameMap);

    String timeSerie = null;

    if (!headerNames.contains("Device")) {
      String s = headerNameMap.get(headerNames.get(1));
      timeSerie = s.substring(0, s.lastIndexOf("."));
    }

    if (headerNames.contains("Device")) {
      timeSerie = record.get("Device") + ".";
    }
    for (String headerNameFull : headerNames) {
      String headerName = headerNameMap.get(headerNameFull);
      if (headerNameFull.equals("Device")) {
        continue;
      }
      if (!headerNameFull.equals("Time")) {
        String buff =
            timeSerie
                + headerName.substring(
                    headerName.lastIndexOf(".") == -1 ? 0 : headerName.lastIndexOf("."),
                    headerName.length());
        timeseries.add(buff);
        headMap.put(buff, headerNameFull);
      }
    }
  }