This is an automated email from the ASF dual-hosted git repository.

gaojun2048 pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/incubator-seatunnel.git


The following commit(s) were added to refs/heads/dev by this push:
     new 98b9168d5 [Feature][Connector-V2][SeaTunnelSchema] Improve code 
structure (#3384)
98b9168d5 is described below

commit 98b9168d5ab42696b672c220ae090abd9382c97e
Author: Tyrantlucifer <[email protected]>
AuthorDate: Fri Nov 11 10:36:48 2022 +0800

    [Feature][Connector-V2][SeaTunnelSchema] Improve code structure (#3384)
---
 .../seatunnel/common/schema/SeaTunnelSchema.java   | 39 +++++++++++-----------
 1 file changed, 20 insertions(+), 19 deletions(-)

diff --git 
a/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/schema/SeaTunnelSchema.java
 
b/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/schema/SeaTunnelSchema.java
index 10b73c7c4..59068fdfe 100644
--- 
a/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/schema/SeaTunnelSchema.java
+++ 
b/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/schema/SeaTunnelSchema.java
@@ -150,25 +150,26 @@ public class SeaTunnelSchema implements Serializable {
         switch (sqlType) {
             case ARRAY:
                 SeaTunnelDataType<?> dataType = parseTypeByString(genericType);
-                if (BasicType.STRING_TYPE.equals(dataType)) {
-                    return ArrayType.STRING_ARRAY_TYPE;
-                } else if (BasicType.BOOLEAN_TYPE.equals(dataType)) {
-                    return ArrayType.BOOLEAN_ARRAY_TYPE;
-                } else if (BasicType.BYTE_TYPE.equals(dataType)) {
-                    return ArrayType.BYTE_ARRAY_TYPE;
-                } else if (BasicType.SHORT_TYPE.equals(dataType)) {
-                    return ArrayType.SHORT_ARRAY_TYPE;
-                } else if (BasicType.INT_TYPE.equals(dataType)) {
-                    return ArrayType.INT_ARRAY_TYPE;
-                } else if (BasicType.LONG_TYPE.equals(dataType)) {
-                    return ArrayType.LONG_ARRAY_TYPE;
-                } else if (BasicType.FLOAT_TYPE.equals(dataType)) {
-                    return ArrayType.FLOAT_ARRAY_TYPE;
-                } else if (BasicType.DOUBLE_TYPE.equals(dataType)) {
-                    return ArrayType.DOUBLE_ARRAY_TYPE;
-                } else {
-                    String errorMsg = String.format("Array type not support 
this genericType [%s]", genericType);
-                    throw new RuntimeException(errorMsg);
+                switch(dataType.getSqlType()) {
+                    case STRING:
+                        return ArrayType.STRING_ARRAY_TYPE;
+                    case BOOLEAN:
+                        return ArrayType.BOOLEAN_ARRAY_TYPE;
+                    case TINYINT:
+                        return ArrayType.BYTE_ARRAY_TYPE;
+                    case SMALLINT:
+                        return ArrayType.SHORT_ARRAY_TYPE;
+                    case INT:
+                        return ArrayType.INT_ARRAY_TYPE;
+                    case BIGINT:
+                        return ArrayType.LONG_ARRAY_TYPE;
+                    case FLOAT:
+                        return ArrayType.FLOAT_ARRAY_TYPE;
+                    case DOUBLE:
+                        return ArrayType.DOUBLE_ARRAY_TYPE;
+                    default:
+                        String errorMsg = String.format("Array type not 
support this genericType [%s]", genericType);
+                        throw new UnsupportedOperationException(errorMsg);
                 }
             case MAP:
                 return new MapType<>(parseTypeByString(keyGenericType), 
parseTypeByString(valueGenericType));

Reply via email to