public static SeaTunnelDataType mapping()

in seatunnel-connectors-v2/connector-tdengine/src/main/java/org/apache/seatunnel/connectors/seatunnel/tdengine/typemapper/TDengineTypeMapper.java [85:154]


    public static SeaTunnelDataType<?> mapping(String tdengineType) {
        switch (tdengineType) {
            case TDENGINE_BOOL:
            case TDENGINE_BIT:
                return BasicType.BOOLEAN_TYPE;
            case TDENGINE_TINYINT:
            case TDENGINE_TINYINT_UNSIGNED:
            case TDENGINE_SMALLINT:
            case TDENGINE_SMALLINT_UNSIGNED:
            case TDENGINE_MEDIUMINT:
            case TDENGINE_MEDIUMINT_UNSIGNED:
            case TDENGINE_INT:
            case TDENGINE_INTEGER:
            case TDENGINE_YEAR:
                return BasicType.INT_TYPE;
            case TDENGINE_INT_UNSIGNED:
            case TDENGINE_INTEGER_UNSIGNED:
            case TDENGINE_BIGINT:
                return BasicType.LONG_TYPE;
            case TDENGINE_BIGINT_UNSIGNED:
                return new DecimalType(20, 0);
            case TDENGINE_DECIMAL:
                log.warn("{} will probably cause value overflow.", TDENGINE_DECIMAL);
                return new DecimalType(38, 18);
            case TDENGINE_DECIMAL_UNSIGNED:
                return new DecimalType(38, 18);
            case TDENGINE_FLOAT:
                return BasicType.FLOAT_TYPE;
            case TDENGINE_FLOAT_UNSIGNED:
                log.warn("{} will probably cause value overflow.", TDENGINE_FLOAT_UNSIGNED);
                return BasicType.FLOAT_TYPE;
            case TDENGINE_DOUBLE:
                return BasicType.DOUBLE_TYPE;
            case TDENGINE_DOUBLE_UNSIGNED:
                log.warn("{} will probably cause value overflow.", TDENGINE_DOUBLE_UNSIGNED);
                return BasicType.DOUBLE_TYPE;
            case TDENGINE_CHAR:
            case TDENGINE_NCHAR:
            case TDENGINE_TINYTEXT:
            case TDENGINE_MEDIUMTEXT:
            case TDENGINE_TEXT:
            case TDENGINE_VARCHAR:
            case TDENGINE_JSON:
            case TDENGINE_LONGTEXT:
                return BasicType.STRING_TYPE;
            case TDENGINE_DATE:
                return LocalTimeType.LOCAL_DATE_TYPE;
            case TDENGINE_TIME:
                return LocalTimeType.LOCAL_TIME_TYPE;
            case TDENGINE_DATETIME:
            case TDENGINE_TIMESTAMP:
                return LocalTimeType.LOCAL_DATE_TIME_TYPE;

            case TDENGINE_TINYBLOB:
            case TDENGINE_MEDIUMBLOB:
            case TDENGINE_BLOB:
            case TDENGINE_LONGBLOB:
            case TDENGINE_VARBINARY:
            case TDENGINE_BINARY:
                return PrimitiveByteArrayType.INSTANCE;

                // Doesn't support yet
            case TDENGINE_GEOMETRY:
            case TDENGINE_UNKNOWN:
            default:
                throw new TDengineConnectorException(
                        CommonErrorCodeDeprecated.UNSUPPORTED_DATA_TYPE,
                        String.format("Doesn't support TDENGINE type '%s' yet.", tdengineType));
        }
    }