那些知道 Presto API for plugins 的人的问题。
我实现了 BigQuery 插件。BigQuery 支持类型,在 Presto 中struct可以表示为类。RowType
RowType创建RowBlockBuilderin RowType::createBlockBuilder,它有RowBlockBuilder::appendStructure方法,它只需要接受AbstractSingleRowBlock类的实例。
这意味着在我的 PrestoRecordCursor BigQueryRecordCursor::getObject方法的实现中,我必须返回一些AbstractSingleRowBlock用于具有 type 的字段的东西RowType。
但是AbstractSingleRowBlock有包私有抽象方法,这阻止了我实现这个类。唯一的孩子SingleRowBlock有包私有构造函数,并且没有可以为我构建实例的工厂或构建器。
如何实施struct支持BigQueryRecordCursor::getObject?(提醒:BigQueryRecordCursor是 的孩子RecordCursor)。