private static String typeString()

in v2/spanner-common/src/main/java/com/google/cloud/teleport/v2/spanner/ddl/Column.java [122:184]


  private static String typeString(Type type, Integer size) {
    switch (type.getCode()) {
      case BOOL:
        return Type.Code.BOOL.getName();
      case PG_BOOL:
        return Type.Code.PG_BOOL.getName();
      case INT64:
        return Type.Code.INT64.getName();
      case PG_INT8:
        return Type.Code.PG_INT8.getName();
      case FLOAT64:
        return Type.Code.FLOAT64.getName();
      case PG_FLOAT8:
        return Type.Code.PG_FLOAT8.getName();
      case FLOAT32:
        return Type.Code.FLOAT32.getName();
      case PG_FLOAT4:
        return Type.Code.PG_FLOAT4.getName();
      case STRING:
        return Type.Code.STRING + "(" + (size == -1 ? "MAX" : Integer.toString(size)) + ")";
      case PG_VARCHAR:
        return Type.Code.PG_VARCHAR.getName()
            + (size == -1 ? "" : ("(" + Integer.toString(size) + ")"));
      case PG_TEXT:
        return Type.Code.PG_TEXT.getName();
      case BYTES:
        return Type.Code.BYTES + "(" + (size == -1 ? "MAX" : Integer.toString(size)) + ")";
      case PG_BYTEA:
        return Type.Code.PG_BYTEA.getName();
      case DATE:
        return Type.Code.DATE.getName();
      case PG_DATE:
        return Type.Code.PG_DATE.getName();
      case TIMESTAMP:
        return Type.Code.TIMESTAMP.getName();
      case PG_TIMESTAMPTZ:
        return Type.Code.PG_TIMESTAMPTZ.getName();
      case NUMERIC:
        return Type.Code.NUMERIC.getName();
      case PG_NUMERIC:
        return Type.Code.PG_NUMERIC.getName();
      case JSON:
        return Type.Code.JSON.getName();
      case PG_JSONB:
        return Type.Code.PG_JSONB.getName();
      case TOKENLIST:
        return Type.Code.TOKENLIST.getName();
      case ARRAY:
        {
          Type arrayType = type.getArrayElementType();
          return Type.Code.ARRAY + "<" + typeString(arrayType, size) + ">";
        }
      case PG_ARRAY:
        {
          Type arrayType = type.getArrayElementType();
          return typeString(arrayType, size) + "[]";
        }
      case PG_COMMIT_TIMESTAMP:
        return Type.Code.PG_COMMIT_TIMESTAMP.getName();
    }

    throw new IllegalArgumentException("Unknown type " + type);
  }