private TProtocol getProtocol()

in parquet-thrift/src/main/java/org/apache/parquet/thrift/ParquetWriteProtocol.java [759:794]


  private TProtocol getProtocol(ThriftField field, ColumnIO columnIO, Events returnClause) {
    TProtocol p;
    final ThriftType type = field.getType();
    switch (type.getType()) {
      case STOP:
      case VOID:
      default:
        throw new UnsupportedOperationException("can't convert type of " + field);
      case BOOL:
      case BYTE:
      case DOUBLE:
      case I16:
      case I32:
      case I64:
      case STRING:
      case UUID:
        p = new PrimitiveWriteProtocol((PrimitiveColumnIO) columnIO, returnClause);
        break;
      case STRUCT:
        p = new StructWriteProtocol((GroupColumnIO) columnIO, (StructType) type, returnClause);
        break;
      case MAP:
        p = new MapWriteProtocol((GroupColumnIO) columnIO, (MapType) type, returnClause);
        break;
      case SET:
        p = getListWriteProtocol((GroupColumnIO) columnIO, ((SetType) type).getValues(), returnClause);
        break;
      case LIST:
        p = getListWriteProtocol((GroupColumnIO) columnIO, ((ListType) type).getValues(), returnClause);
        break;
      case ENUM:
        p = new EnumWriteProtocol((PrimitiveColumnIO) columnIO, (EnumType) type, returnClause);
        break;
    }
    return p;
  }