Class PulsarMetadata

java.lang.Object
org.apache.pulsar.sql.presto.PulsarMetadata
All Implemented Interfaces:
io.prestosql.spi.connector.ConnectorMetadata

public class PulsarMetadata extends Object implements io.prestosql.spi.connector.ConnectorMetadata
This connector helps to work with metadata.
  • Constructor Summary

    Constructors
    Constructor
    Description
    PulsarMetadata(PulsarConnectorId connectorId, PulsarConnectorConfig pulsarConnectorConfig, PulsarDispatchingRowDecoderFactory decoderFactory)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    Map<String,io.prestosql.spi.connector.ColumnHandle>
    getColumnHandles(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle)
     
    io.prestosql.spi.connector.ColumnMetadata
    getColumnMetadata(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.ColumnHandle columnHandle)
     
    List<io.prestosql.spi.connector.ColumnMetadata>
    getPulsarColumns(org.apache.pulsar.common.naming.TopicName topicName, org.apache.pulsar.common.schema.SchemaInfo schemaInfo, boolean withInternalColumns, PulsarColumnHandle.HandleKeyValueType handleKeyValueType)
    Convert pulsar schema into presto table metadata.
    io.prestosql.spi.connector.ConnectorTableHandle
    getTableHandle(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName tableName)
     
    io.prestosql.spi.connector.ConnectorTableLayout
    getTableLayout(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableLayoutHandle handle)
     
    List<io.prestosql.spi.connector.ConnectorTableLayoutResult>
    getTableLayouts(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle table, io.prestosql.spi.connector.Constraint constraint, Optional<Set<io.prestosql.spi.connector.ColumnHandle>> desiredColumns)
     
    io.prestosql.spi.connector.ConnectorTableMetadata
    getTableMetadata(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle table)
     
    listSchemaNames(io.prestosql.spi.connector.ConnectorSession session)
     
    Map<io.prestosql.spi.connector.SchemaTableName,List<io.prestosql.spi.connector.ColumnMetadata>>
    listTableColumns(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTablePrefix prefix)
     
    List<io.prestosql.spi.connector.SchemaTableName>
    listTables(io.prestosql.spi.connector.ConnectorSession session, Optional<String> schemaName)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface io.prestosql.spi.connector.ConnectorMetadata

    addColumn, applyDelete, applyFilter, applyLimit, applyProjection, applySample, beginCreateTable, beginDelete, beginInsert, beginInsert, beginQuery, beginStatisticsCollection, cleanupQuery, createRole, createSchema, createTable, createView, dropColumn, dropRole, dropSchema, dropTable, dropView, executeDelete, finishCreateTable, finishDelete, finishInsert, finishStatisticsCollection, getCommonPartitioningHandle, getInfo, getInfo, getInsertLayout, getNewTableLayout, getStatisticsCollectionMetadata, getStatisticsCollectionMetadataForWrite, getSystemTable, getTableHandleForStatisticsCollection, getTableProperties, getTableStatistics, getUpdateRowIdColumnHandle, getView, getViews, grantRoles, grantTablePrivileges, listApplicableRoles, listEnabledRoles, listRoleGrants, listRoles, listTablePrivileges, listViews, makeCompatiblePartitioning, makeCompatiblePartitioning, metadataDelete, renameColumn, renameSchema, renameTable, renameView, resolveIndex, revokeRoles, revokeTablePrivileges, schemaExists, setSchemaAuthorization, setTableComment, supportsMetadataDelete, supportsMissingColumnsOnInsert, usesLegacyTableLayouts, validateScan
  • Constructor Details

  • Method Details

    • listSchemaNames

      public List<String> listSchemaNames(io.prestosql.spi.connector.ConnectorSession session)
      Specified by:
      listSchemaNames in interface io.prestosql.spi.connector.ConnectorMetadata
    • getTableHandle

      public io.prestosql.spi.connector.ConnectorTableHandle getTableHandle(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName tableName)
      Specified by:
      getTableHandle in interface io.prestosql.spi.connector.ConnectorMetadata
    • getTableLayouts

      public List<io.prestosql.spi.connector.ConnectorTableLayoutResult> getTableLayouts(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle table, io.prestosql.spi.connector.Constraint constraint, Optional<Set<io.prestosql.spi.connector.ColumnHandle>> desiredColumns)
      Specified by:
      getTableLayouts in interface io.prestosql.spi.connector.ConnectorMetadata
    • getTableLayout

      public io.prestosql.spi.connector.ConnectorTableLayout getTableLayout(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableLayoutHandle handle)
      Specified by:
      getTableLayout in interface io.prestosql.spi.connector.ConnectorMetadata
    • getTableMetadata

      public io.prestosql.spi.connector.ConnectorTableMetadata getTableMetadata(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle table)
      Specified by:
      getTableMetadata in interface io.prestosql.spi.connector.ConnectorMetadata
    • listTables

      public List<io.prestosql.spi.connector.SchemaTableName> listTables(io.prestosql.spi.connector.ConnectorSession session, Optional<String> schemaName)
      Specified by:
      listTables in interface io.prestosql.spi.connector.ConnectorMetadata
    • getColumnHandles

      public Map<String,io.prestosql.spi.connector.ColumnHandle> getColumnHandles(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle)
      Specified by:
      getColumnHandles in interface io.prestosql.spi.connector.ConnectorMetadata
    • getColumnMetadata

      public io.prestosql.spi.connector.ColumnMetadata getColumnMetadata(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.ColumnHandle columnHandle)
      Specified by:
      getColumnMetadata in interface io.prestosql.spi.connector.ConnectorMetadata
    • listTableColumns

      public Map<io.prestosql.spi.connector.SchemaTableName,List<io.prestosql.spi.connector.ColumnMetadata>> listTableColumns(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTablePrefix prefix)
      Specified by:
      listTableColumns in interface io.prestosql.spi.connector.ConnectorMetadata
    • getPulsarColumns

      public List<io.prestosql.spi.connector.ColumnMetadata> getPulsarColumns(org.apache.pulsar.common.naming.TopicName topicName, org.apache.pulsar.common.schema.SchemaInfo schemaInfo, boolean withInternalColumns, PulsarColumnHandle.HandleKeyValueType handleKeyValueType)
      Convert pulsar schema into presto table metadata.