def convertToStruct()

in spark-doris-connector/src/main/scala/org/apache/doris/spark/sql/SchemaUtils.scala [63:85]


  def convertToStruct(schema: Schema, dorisReadFields: String, ignoredTypes: String): StructType = {
    val fieldList = if (dorisReadFields != null && dorisReadFields.nonEmpty) {
      dorisReadFields.split(",")
    } else {
      Array.empty[String]
    }
    val ignoredTypeList = if (ignoredTypes != null && ignoredTypes.nonEmpty) {
      ignoredTypes.split(",").map(t => t.trim.toUpperCase)
    } else {
      Array.empty[String]
    }
    val fields = schema.getProperties
      .filter(x => (fieldList.contains(x.getName) || fieldList.isEmpty)
        && !ignoredTypeList.contains(x.getType))
      .map(f =>
        DataTypes.createStructField(
          f.getName,
          getCatalystType(f.getType, f.getPrecision, f.getScale),
          true
        )
      )
    DataTypes.createStructType(fields)
  }