@@ -71,65 +71,7 @@ static int extractColumnType(Type type) {
7171 }
7272
7373 static String getSpannerTypeName (Type type , Dialect dialect ) {
74- // TODO: Use com.google.cloud.spanner.Type#getSpannerTypeName() when available.
75- Preconditions .checkNotNull (type );
76- switch (type .getCode ()) {
77- case BOOL :
78- return dialect == Dialect .POSTGRESQL ? "boolean" : "BOOL" ;
79- case BYTES :
80- return dialect == Dialect .POSTGRESQL ? "bytea" : "BYTES" ;
81- case DATE :
82- return dialect == Dialect .POSTGRESQL ? "date" : "DATE" ;
83- case FLOAT64 :
84- return dialect == Dialect .POSTGRESQL ? "double precision" : "FLOAT64" ;
85- case INT64 :
86- return dialect == Dialect .POSTGRESQL ? "bigint" : "INT64" ;
87- case NUMERIC :
88- return "NUMERIC" ;
89- case PG_NUMERIC :
90- return "numeric" ;
91- case STRING :
92- return dialect == Dialect .POSTGRESQL ? "character varying" : "STRING" ;
93- case JSON :
94- return "JSON" ;
95- case PG_JSONB :
96- return "jsonb" ;
97- case TIMESTAMP :
98- return dialect == Dialect .POSTGRESQL ? "timestamp with time zone" : "TIMESTAMP" ;
99- case STRUCT :
100- return "STRUCT" ;
101- case ARRAY :
102- switch (type .getArrayElementType ().getCode ()) {
103- case BOOL :
104- return dialect == Dialect .POSTGRESQL ? "boolean[]" : "ARRAY<BOOL>" ;
105- case BYTES :
106- return dialect == Dialect .POSTGRESQL ? "bytea[]" : "ARRAY<BYTES>" ;
107- case DATE :
108- return dialect == Dialect .POSTGRESQL ? "date[]" : "ARRAY<DATE>" ;
109- case FLOAT64 :
110- return dialect == Dialect .POSTGRESQL ? "double precision[]" : "ARRAY<FLOAT64>" ;
111- case INT64 :
112- return dialect == Dialect .POSTGRESQL ? "bigint[]" : "ARRAY<INT64>" ;
113- case NUMERIC :
114- return "ARRAY<NUMERIC>" ;
115- case PG_NUMERIC :
116- return "numeric[]" ;
117- case STRING :
118- return dialect == Dialect .POSTGRESQL ? "character varying[]" : "ARRAY<STRING>" ;
119- case JSON :
120- return "ARRAY<JSON>" ;
121- case PG_JSONB :
122- return "jsonb[]" ;
123- case TIMESTAMP :
124- return dialect == Dialect .POSTGRESQL
125- ? "timestamp with time zone[]"
126- : "ARRAY<TIMESTAMP>" ;
127- case STRUCT :
128- return "ARRAY<STRUCT>" ;
129- }
130- default :
131- return null ;
132- }
74+ return Preconditions .checkNotNull (type ).getSpannerTypeName (dialect );
13375 }
13476
13577 /**
0 commit comments