Class ClassLoaderSafeConnectorMetadata

  • All Implemented Interfaces:
    io.prestosql.spi.connector.ConnectorMetadata

    public class ClassLoaderSafeConnectorMetadata
    extends java.lang.Object
    implements io.prestosql.spi.connector.ConnectorMetadata
    • Constructor Summary

      Constructors 
      Constructor Description
      ClassLoaderSafeConnectorMetadata​(io.prestosql.spi.connector.ConnectorMetadata delegate, java.lang.ClassLoader classLoader)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addColumn​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.ColumnMetadata column)  
      java.util.Optional<io.prestosql.spi.connector.AggregationApplicationResult<io.prestosql.spi.connector.ConnectorTableHandle>> applyAggregation​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle table, java.util.List<io.prestosql.spi.connector.AggregateFunction> aggregates, java.util.Map<java.lang.String,​io.prestosql.spi.connector.ColumnHandle> assignments, java.util.List<java.util.List<io.prestosql.spi.connector.ColumnHandle>> groupingSets)  
      java.util.Optional<io.prestosql.spi.connector.ConnectorTableHandle> applyDelete​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle handle)  
      java.util.Optional<io.prestosql.spi.connector.ConstraintApplicationResult<io.prestosql.spi.connector.ConnectorTableHandle>> applyFilter​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle table, io.prestosql.spi.connector.Constraint constraint)  
      java.util.Optional<io.prestosql.spi.connector.LimitApplicationResult<io.prestosql.spi.connector.ConnectorTableHandle>> applyLimit​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle table, long limit)  
      java.util.Optional<io.prestosql.spi.connector.ProjectionApplicationResult<io.prestosql.spi.connector.ConnectorTableHandle>> applyProjection​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle table, java.util.List<io.prestosql.spi.expression.ConnectorExpression> projections, java.util.Map<java.lang.String,​io.prestosql.spi.connector.ColumnHandle> assignments)  
      java.util.Optional<io.prestosql.spi.connector.ConnectorTableHandle> applySample​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle table, io.prestosql.spi.connector.SampleType sampleType, double sampleRatio)  
      io.prestosql.spi.connector.ConnectorOutputTableHandle beginCreateTable​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableMetadata tableMetadata, java.util.Optional<io.prestosql.spi.connector.ConnectorNewTableLayout> layout)  
      io.prestosql.spi.connector.ConnectorTableHandle beginDelete​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle)  
      io.prestosql.spi.connector.ConnectorInsertTableHandle beginInsert​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle)  
      io.prestosql.spi.connector.ConnectorInsertTableHandle beginInsert​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, java.util.List<io.prestosql.spi.connector.ColumnHandle> columns)  
      void beginQuery​(io.prestosql.spi.connector.ConnectorSession session)  
      io.prestosql.spi.connector.ConnectorTableHandle beginStatisticsCollection​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle)  
      void cleanupQuery​(io.prestosql.spi.connector.ConnectorSession session)  
      void createRole​(io.prestosql.spi.connector.ConnectorSession session, java.lang.String role, java.util.Optional<io.prestosql.spi.security.PrestoPrincipal> grantor)  
      void createSchema​(io.prestosql.spi.connector.ConnectorSession session, java.lang.String schemaName, java.util.Map<java.lang.String,​java.lang.Object> properties, io.prestosql.spi.security.PrestoPrincipal owner)  
      void createTable​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableMetadata tableMetadata, boolean ignoreExisting)  
      void createView​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName viewName, io.prestosql.spi.connector.ConnectorViewDefinition definition, boolean replace)  
      void dropColumn​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.ColumnHandle column)  
      void dropRole​(io.prestosql.spi.connector.ConnectorSession session, java.lang.String role)  
      void dropSchema​(io.prestosql.spi.connector.ConnectorSession session, java.lang.String schemaName)  
      void dropTable​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle)  
      void dropView​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName viewName)  
      java.util.OptionalLong executeDelete​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle handle)  
      java.util.Optional<io.prestosql.spi.connector.ConnectorOutputMetadata> finishCreateTable​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorOutputTableHandle tableHandle, java.util.Collection<io.airlift.slice.Slice> fragments, java.util.Collection<io.prestosql.spi.statistics.ComputedStatistics> computedStatistics)  
      void finishDelete​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, java.util.Collection<io.airlift.slice.Slice> fragments)  
      java.util.Optional<io.prestosql.spi.connector.ConnectorOutputMetadata> finishInsert​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorInsertTableHandle insertHandle, java.util.Collection<io.airlift.slice.Slice> fragments, java.util.Collection<io.prestosql.spi.statistics.ComputedStatistics> computedStatistics)  
      void finishStatisticsCollection​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, java.util.Collection<io.prestosql.spi.statistics.ComputedStatistics> computedStatistics)  
      java.util.Map<java.lang.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)  
      java.util.Optional<io.prestosql.spi.connector.ConnectorPartitioningHandle> getCommonPartitioningHandle​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorPartitioningHandle left, io.prestosql.spi.connector.ConnectorPartitioningHandle right)  
      java.util.Optional<java.lang.Object> getInfo​(io.prestosql.spi.connector.ConnectorTableHandle table)  
      java.util.Optional<java.lang.Object> getInfo​(io.prestosql.spi.connector.ConnectorTableLayoutHandle table)  
      java.util.Optional<io.prestosql.spi.connector.ConnectorNewTableLayout> getInsertLayout​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle)  
      java.util.Optional<io.prestosql.spi.connector.ConnectorNewTableLayout> getNewTableLayout​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableMetadata tableMetadata)  
      java.util.Optional<io.prestosql.spi.security.PrestoPrincipal> getSchemaOwner​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.CatalogSchemaName schemaName)  
      java.util.Map<java.lang.String,​java.lang.Object> getSchemaProperties​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.CatalogSchemaName schemaName)  
      io.prestosql.spi.statistics.TableStatisticsMetadata getStatisticsCollectionMetadata​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableMetadata tableMetadata)  
      io.prestosql.spi.statistics.TableStatisticsMetadata getStatisticsCollectionMetadataForWrite​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableMetadata tableMetadata)  
      java.util.Optional<io.prestosql.spi.connector.SystemTable> getSystemTable​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName tableName)  
      io.prestosql.spi.connector.ConnectorTableHandle getTableHandle​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName tableName)  
      io.prestosql.spi.connector.ConnectorTableHandle getTableHandleForStatisticsCollection​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName tableName, java.util.Map<java.lang.String,​java.lang.Object> analyzeProperties)  
      io.prestosql.spi.connector.ConnectorTableLayout getTableLayout​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableLayoutHandle handle)  
      java.util.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, java.util.Optional<java.util.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)  
      io.prestosql.spi.connector.ConnectorTableProperties getTableProperties​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle table)  
      io.prestosql.spi.statistics.TableStatistics getTableStatistics​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.Constraint constraint)  
      io.prestosql.spi.connector.ColumnHandle getUpdateRowIdColumnHandle​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle)  
      java.util.Optional<io.prestosql.spi.connector.ConnectorViewDefinition> getView​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName viewName)  
      java.util.Map<io.prestosql.spi.connector.SchemaTableName,​io.prestosql.spi.connector.ConnectorViewDefinition> getViews​(io.prestosql.spi.connector.ConnectorSession session, java.util.Optional<java.lang.String> schemaName)  
      void grantRoles​(io.prestosql.spi.connector.ConnectorSession connectorSession, java.util.Set<java.lang.String> roles, java.util.Set<io.prestosql.spi.security.PrestoPrincipal> grantees, boolean adminOption, java.util.Optional<io.prestosql.spi.security.PrestoPrincipal> grantor)  
      void grantTablePrivileges​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName tableName, java.util.Set<io.prestosql.spi.security.Privilege> privileges, io.prestosql.spi.security.PrestoPrincipal grantee, boolean grantOption)  
      java.util.Set<io.prestosql.spi.security.RoleGrant> listAllRoleGrants​(io.prestosql.spi.connector.ConnectorSession session, java.util.Optional<java.util.Set<java.lang.String>> roles, java.util.Optional<java.util.Set<java.lang.String>> grantees, java.util.OptionalLong limit)  
      java.util.Set<io.prestosql.spi.security.RoleGrant> listApplicableRoles​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.security.PrestoPrincipal principal)  
      java.util.Set<java.lang.String> listEnabledRoles​(io.prestosql.spi.connector.ConnectorSession session)  
      java.util.Set<io.prestosql.spi.security.RoleGrant> listRoleGrants​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.security.PrestoPrincipal principal)  
      java.util.Set<java.lang.String> listRoles​(io.prestosql.spi.connector.ConnectorSession session)  
      java.util.List<java.lang.String> listSchemaNames​(io.prestosql.spi.connector.ConnectorSession session)  
      java.util.Map<io.prestosql.spi.connector.SchemaTableName,​java.util.List<io.prestosql.spi.connector.ColumnMetadata>> listTableColumns​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTablePrefix prefix)  
      java.util.List<io.prestosql.spi.security.GrantInfo> listTablePrivileges​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTablePrefix prefix)  
      java.util.List<io.prestosql.spi.connector.SchemaTableName> listTables​(io.prestosql.spi.connector.ConnectorSession session, java.util.Optional<java.lang.String> schemaName)  
      java.util.List<io.prestosql.spi.connector.SchemaTableName> listViews​(io.prestosql.spi.connector.ConnectorSession session, java.util.Optional<java.lang.String> schemaName)  
      io.prestosql.spi.connector.ConnectorTableHandle makeCompatiblePartitioning​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.ConnectorPartitioningHandle partitioningHandle)  
      io.prestosql.spi.connector.ConnectorTableLayoutHandle makeCompatiblePartitioning​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableLayoutHandle tableLayoutHandle, io.prestosql.spi.connector.ConnectorPartitioningHandle partitioningHandle)  
      java.util.OptionalLong metadataDelete​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.ConnectorTableLayoutHandle tableLayoutHandle)  
      void renameColumn​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.ColumnHandle source, java.lang.String target)  
      void renameSchema​(io.prestosql.spi.connector.ConnectorSession session, java.lang.String source, java.lang.String target)  
      void renameTable​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.SchemaTableName newTableName)  
      void renameView​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName source, io.prestosql.spi.connector.SchemaTableName target)  
      java.util.Optional<io.prestosql.spi.connector.ConnectorResolvedIndex> resolveIndex​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, java.util.Set<io.prestosql.spi.connector.ColumnHandle> indexableColumns, java.util.Set<io.prestosql.spi.connector.ColumnHandle> outputColumns, io.prestosql.spi.predicate.TupleDomain<io.prestosql.spi.connector.ColumnHandle> tupleDomain)  
      void revokeRoles​(io.prestosql.spi.connector.ConnectorSession connectorSession, java.util.Set<java.lang.String> roles, java.util.Set<io.prestosql.spi.security.PrestoPrincipal> grantees, boolean adminOption, java.util.Optional<io.prestosql.spi.security.PrestoPrincipal> grantor)  
      void revokeTablePrivileges​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.SchemaTableName tableName, java.util.Set<io.prestosql.spi.security.Privilege> privileges, io.prestosql.spi.security.PrestoPrincipal grantee, boolean grantOption)  
      boolean schemaExists​(io.prestosql.spi.connector.ConnectorSession session, java.lang.String schemaName)  
      void setColumnComment​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.ColumnHandle column, java.util.Optional<java.lang.String> comment)  
      void setSchemaAuthorization​(io.prestosql.spi.connector.ConnectorSession session, java.lang.String source, io.prestosql.spi.security.PrestoPrincipal principal)  
      void setTableComment​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, java.util.Optional<java.lang.String> comment)  
      boolean supportsMetadataDelete​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle tableHandle, io.prestosql.spi.connector.ConnectorTableLayoutHandle tableLayoutHandle)  
      boolean supportsMissingColumnsOnInsert()  
      boolean usesLegacyTableLayouts()  
      void validateScan​(io.prestosql.spi.connector.ConnectorSession session, io.prestosql.spi.connector.ConnectorTableHandle handle)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ClassLoaderSafeConnectorMetadata

        @Inject
        public ClassLoaderSafeConnectorMetadata​(io.prestosql.spi.connector.ConnectorMetadata delegate,
                                                java.lang.ClassLoader classLoader)
    • Method Detail

      • getTableLayouts

        public java.util.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,
                                                                                                     java.util.Optional<java.util.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
      • getCommonPartitioningHandle

        public java.util.Optional<io.prestosql.spi.connector.ConnectorPartitioningHandle> getCommonPartitioningHandle​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                                      io.prestosql.spi.connector.ConnectorPartitioningHandle left,
                                                                                                                      io.prestosql.spi.connector.ConnectorPartitioningHandle right)
        Specified by:
        getCommonPartitioningHandle in interface io.prestosql.spi.connector.ConnectorMetadata
      • makeCompatiblePartitioning

        public io.prestosql.spi.connector.ConnectorTableLayoutHandle makeCompatiblePartitioning​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                io.prestosql.spi.connector.ConnectorTableLayoutHandle tableLayoutHandle,
                                                                                                io.prestosql.spi.connector.ConnectorPartitioningHandle partitioningHandle)
        Specified by:
        makeCompatiblePartitioning in interface io.prestosql.spi.connector.ConnectorMetadata
      • makeCompatiblePartitioning

        public io.prestosql.spi.connector.ConnectorTableHandle makeCompatiblePartitioning​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                          io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                                                                          io.prestosql.spi.connector.ConnectorPartitioningHandle partitioningHandle)
        Specified by:
        makeCompatiblePartitioning in interface io.prestosql.spi.connector.ConnectorMetadata
      • getNewTableLayout

        public java.util.Optional<io.prestosql.spi.connector.ConnectorNewTableLayout> getNewTableLayout​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                        io.prestosql.spi.connector.ConnectorTableMetadata tableMetadata)
        Specified by:
        getNewTableLayout in interface io.prestosql.spi.connector.ConnectorMetadata
      • getInsertLayout

        public java.util.Optional<io.prestosql.spi.connector.ConnectorNewTableLayout> getInsertLayout​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                      io.prestosql.spi.connector.ConnectorTableHandle tableHandle)
        Specified by:
        getInsertLayout in interface io.prestosql.spi.connector.ConnectorMetadata
      • getStatisticsCollectionMetadataForWrite

        public io.prestosql.spi.statistics.TableStatisticsMetadata getStatisticsCollectionMetadataForWrite​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                           io.prestosql.spi.connector.ConnectorTableMetadata tableMetadata)
        Specified by:
        getStatisticsCollectionMetadataForWrite in interface io.prestosql.spi.connector.ConnectorMetadata
      • getStatisticsCollectionMetadata

        public io.prestosql.spi.statistics.TableStatisticsMetadata getStatisticsCollectionMetadata​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                   io.prestosql.spi.connector.ConnectorTableMetadata tableMetadata)
        Specified by:
        getStatisticsCollectionMetadata in interface io.prestosql.spi.connector.ConnectorMetadata
      • beginStatisticsCollection

        public io.prestosql.spi.connector.ConnectorTableHandle beginStatisticsCollection​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                         io.prestosql.spi.connector.ConnectorTableHandle tableHandle)
        Specified by:
        beginStatisticsCollection in interface io.prestosql.spi.connector.ConnectorMetadata
      • finishStatisticsCollection

        public void finishStatisticsCollection​(io.prestosql.spi.connector.ConnectorSession session,
                                               io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                               java.util.Collection<io.prestosql.spi.statistics.ComputedStatistics> computedStatistics)
        Specified by:
        finishStatisticsCollection in interface io.prestosql.spi.connector.ConnectorMetadata
      • schemaExists

        public boolean schemaExists​(io.prestosql.spi.connector.ConnectorSession session,
                                    java.lang.String schemaName)
        Specified by:
        schemaExists in interface io.prestosql.spi.connector.ConnectorMetadata
      • listSchemaNames

        public java.util.List<java.lang.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
      • getTableHandleForStatisticsCollection

        public io.prestosql.spi.connector.ConnectorTableHandle getTableHandleForStatisticsCollection​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                     io.prestosql.spi.connector.SchemaTableName tableName,
                                                                                                     java.util.Map<java.lang.String,​java.lang.Object> analyzeProperties)
        Specified by:
        getTableHandleForStatisticsCollection in interface io.prestosql.spi.connector.ConnectorMetadata
      • getSystemTable

        public java.util.Optional<io.prestosql.spi.connector.SystemTable> getSystemTable​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                         io.prestosql.spi.connector.SchemaTableName tableName)
        Specified by:
        getSystemTable 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
      • getInfo

        public java.util.Optional<java.lang.Object> getInfo​(io.prestosql.spi.connector.ConnectorTableLayoutHandle table)
        Specified by:
        getInfo in interface io.prestosql.spi.connector.ConnectorMetadata
      • getInfo

        public java.util.Optional<java.lang.Object> getInfo​(io.prestosql.spi.connector.ConnectorTableHandle table)
        Specified by:
        getInfo in interface io.prestosql.spi.connector.ConnectorMetadata
      • listTables

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

        public java.util.Map<java.lang.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 java.util.Map<io.prestosql.spi.connector.SchemaTableName,​java.util.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
      • getTableStatistics

        public io.prestosql.spi.statistics.TableStatistics getTableStatistics​(io.prestosql.spi.connector.ConnectorSession session,
                                                                              io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                                                              io.prestosql.spi.connector.Constraint constraint)
        Specified by:
        getTableStatistics in interface io.prestosql.spi.connector.ConnectorMetadata
      • addColumn

        public void addColumn​(io.prestosql.spi.connector.ConnectorSession session,
                              io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                              io.prestosql.spi.connector.ColumnMetadata column)
        Specified by:
        addColumn in interface io.prestosql.spi.connector.ConnectorMetadata
      • createSchema

        public void createSchema​(io.prestosql.spi.connector.ConnectorSession session,
                                 java.lang.String schemaName,
                                 java.util.Map<java.lang.String,​java.lang.Object> properties,
                                 io.prestosql.spi.security.PrestoPrincipal owner)
        Specified by:
        createSchema in interface io.prestosql.spi.connector.ConnectorMetadata
      • dropSchema

        public void dropSchema​(io.prestosql.spi.connector.ConnectorSession session,
                               java.lang.String schemaName)
        Specified by:
        dropSchema in interface io.prestosql.spi.connector.ConnectorMetadata
      • renameSchema

        public void renameSchema​(io.prestosql.spi.connector.ConnectorSession session,
                                 java.lang.String source,
                                 java.lang.String target)
        Specified by:
        renameSchema in interface io.prestosql.spi.connector.ConnectorMetadata
      • setSchemaAuthorization

        public void setSchemaAuthorization​(io.prestosql.spi.connector.ConnectorSession session,
                                           java.lang.String source,
                                           io.prestosql.spi.security.PrestoPrincipal principal)
        Specified by:
        setSchemaAuthorization in interface io.prestosql.spi.connector.ConnectorMetadata
      • createTable

        public void createTable​(io.prestosql.spi.connector.ConnectorSession session,
                                io.prestosql.spi.connector.ConnectorTableMetadata tableMetadata,
                                boolean ignoreExisting)
        Specified by:
        createTable in interface io.prestosql.spi.connector.ConnectorMetadata
      • dropTable

        public void dropTable​(io.prestosql.spi.connector.ConnectorSession session,
                              io.prestosql.spi.connector.ConnectorTableHandle tableHandle)
        Specified by:
        dropTable in interface io.prestosql.spi.connector.ConnectorMetadata
      • renameColumn

        public void renameColumn​(io.prestosql.spi.connector.ConnectorSession session,
                                 io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                 io.prestosql.spi.connector.ColumnHandle source,
                                 java.lang.String target)
        Specified by:
        renameColumn in interface io.prestosql.spi.connector.ConnectorMetadata
      • dropColumn

        public void dropColumn​(io.prestosql.spi.connector.ConnectorSession session,
                               io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                               io.prestosql.spi.connector.ColumnHandle column)
        Specified by:
        dropColumn in interface io.prestosql.spi.connector.ConnectorMetadata
      • renameTable

        public void renameTable​(io.prestosql.spi.connector.ConnectorSession session,
                                io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                io.prestosql.spi.connector.SchemaTableName newTableName)
        Specified by:
        renameTable in interface io.prestosql.spi.connector.ConnectorMetadata
      • setTableComment

        public void setTableComment​(io.prestosql.spi.connector.ConnectorSession session,
                                    io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                    java.util.Optional<java.lang.String> comment)
        Specified by:
        setTableComment in interface io.prestosql.spi.connector.ConnectorMetadata
      • setColumnComment

        public void setColumnComment​(io.prestosql.spi.connector.ConnectorSession session,
                                     io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                     io.prestosql.spi.connector.ColumnHandle column,
                                     java.util.Optional<java.lang.String> comment)
        Specified by:
        setColumnComment in interface io.prestosql.spi.connector.ConnectorMetadata
      • beginCreateTable

        public io.prestosql.spi.connector.ConnectorOutputTableHandle beginCreateTable​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                      io.prestosql.spi.connector.ConnectorTableMetadata tableMetadata,
                                                                                      java.util.Optional<io.prestosql.spi.connector.ConnectorNewTableLayout> layout)
        Specified by:
        beginCreateTable in interface io.prestosql.spi.connector.ConnectorMetadata
      • finishCreateTable

        public java.util.Optional<io.prestosql.spi.connector.ConnectorOutputMetadata> finishCreateTable​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                        io.prestosql.spi.connector.ConnectorOutputTableHandle tableHandle,
                                                                                                        java.util.Collection<io.airlift.slice.Slice> fragments,
                                                                                                        java.util.Collection<io.prestosql.spi.statistics.ComputedStatistics> computedStatistics)
        Specified by:
        finishCreateTable in interface io.prestosql.spi.connector.ConnectorMetadata
      • beginQuery

        public void beginQuery​(io.prestosql.spi.connector.ConnectorSession session)
        Specified by:
        beginQuery in interface io.prestosql.spi.connector.ConnectorMetadata
      • cleanupQuery

        public void cleanupQuery​(io.prestosql.spi.connector.ConnectorSession session)
        Specified by:
        cleanupQuery in interface io.prestosql.spi.connector.ConnectorMetadata
      • beginInsert

        public io.prestosql.spi.connector.ConnectorInsertTableHandle beginInsert​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                 io.prestosql.spi.connector.ConnectorTableHandle tableHandle)
        Specified by:
        beginInsert in interface io.prestosql.spi.connector.ConnectorMetadata
      • beginInsert

        public io.prestosql.spi.connector.ConnectorInsertTableHandle beginInsert​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                 io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                                                                 java.util.List<io.prestosql.spi.connector.ColumnHandle> columns)
        Specified by:
        beginInsert in interface io.prestosql.spi.connector.ConnectorMetadata
      • supportsMissingColumnsOnInsert

        public boolean supportsMissingColumnsOnInsert()
        Specified by:
        supportsMissingColumnsOnInsert in interface io.prestosql.spi.connector.ConnectorMetadata
      • finishInsert

        public java.util.Optional<io.prestosql.spi.connector.ConnectorOutputMetadata> finishInsert​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                   io.prestosql.spi.connector.ConnectorInsertTableHandle insertHandle,
                                                                                                   java.util.Collection<io.airlift.slice.Slice> fragments,
                                                                                                   java.util.Collection<io.prestosql.spi.statistics.ComputedStatistics> computedStatistics)
        Specified by:
        finishInsert in interface io.prestosql.spi.connector.ConnectorMetadata
      • createView

        public void createView​(io.prestosql.spi.connector.ConnectorSession session,
                               io.prestosql.spi.connector.SchemaTableName viewName,
                               io.prestosql.spi.connector.ConnectorViewDefinition definition,
                               boolean replace)
        Specified by:
        createView in interface io.prestosql.spi.connector.ConnectorMetadata
      • renameView

        public void renameView​(io.prestosql.spi.connector.ConnectorSession session,
                               io.prestosql.spi.connector.SchemaTableName source,
                               io.prestosql.spi.connector.SchemaTableName target)
        Specified by:
        renameView in interface io.prestosql.spi.connector.ConnectorMetadata
      • dropView

        public void dropView​(io.prestosql.spi.connector.ConnectorSession session,
                             io.prestosql.spi.connector.SchemaTableName viewName)
        Specified by:
        dropView in interface io.prestosql.spi.connector.ConnectorMetadata
      • listViews

        public java.util.List<io.prestosql.spi.connector.SchemaTableName> listViews​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                    java.util.Optional<java.lang.String> schemaName)
        Specified by:
        listViews in interface io.prestosql.spi.connector.ConnectorMetadata
      • getViews

        public java.util.Map<io.prestosql.spi.connector.SchemaTableName,​io.prestosql.spi.connector.ConnectorViewDefinition> getViews​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                                                           java.util.Optional<java.lang.String> schemaName)
        Specified by:
        getViews in interface io.prestosql.spi.connector.ConnectorMetadata
      • getView

        public java.util.Optional<io.prestosql.spi.connector.ConnectorViewDefinition> getView​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                              io.prestosql.spi.connector.SchemaTableName viewName)
        Specified by:
        getView in interface io.prestosql.spi.connector.ConnectorMetadata
      • getSchemaProperties

        public java.util.Map<java.lang.String,​java.lang.Object> getSchemaProperties​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                          io.prestosql.spi.connector.CatalogSchemaName schemaName)
        Specified by:
        getSchemaProperties in interface io.prestosql.spi.connector.ConnectorMetadata
      • getSchemaOwner

        public java.util.Optional<io.prestosql.spi.security.PrestoPrincipal> getSchemaOwner​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                            io.prestosql.spi.connector.CatalogSchemaName schemaName)
        Specified by:
        getSchemaOwner in interface io.prestosql.spi.connector.ConnectorMetadata
      • getUpdateRowIdColumnHandle

        public io.prestosql.spi.connector.ColumnHandle getUpdateRowIdColumnHandle​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                  io.prestosql.spi.connector.ConnectorTableHandle tableHandle)
        Specified by:
        getUpdateRowIdColumnHandle in interface io.prestosql.spi.connector.ConnectorMetadata
      • beginDelete

        public io.prestosql.spi.connector.ConnectorTableHandle beginDelete​(io.prestosql.spi.connector.ConnectorSession session,
                                                                           io.prestosql.spi.connector.ConnectorTableHandle tableHandle)
        Specified by:
        beginDelete in interface io.prestosql.spi.connector.ConnectorMetadata
      • finishDelete

        public void finishDelete​(io.prestosql.spi.connector.ConnectorSession session,
                                 io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                 java.util.Collection<io.airlift.slice.Slice> fragments)
        Specified by:
        finishDelete in interface io.prestosql.spi.connector.ConnectorMetadata
      • supportsMetadataDelete

        public boolean supportsMetadataDelete​(io.prestosql.spi.connector.ConnectorSession session,
                                              io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                              io.prestosql.spi.connector.ConnectorTableLayoutHandle tableLayoutHandle)
        Specified by:
        supportsMetadataDelete in interface io.prestosql.spi.connector.ConnectorMetadata
      • metadataDelete

        public java.util.OptionalLong metadataDelete​(io.prestosql.spi.connector.ConnectorSession session,
                                                     io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                                     io.prestosql.spi.connector.ConnectorTableLayoutHandle tableLayoutHandle)
        Specified by:
        metadataDelete in interface io.prestosql.spi.connector.ConnectorMetadata
      • applyDelete

        public java.util.Optional<io.prestosql.spi.connector.ConnectorTableHandle> applyDelete​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                               io.prestosql.spi.connector.ConnectorTableHandle handle)
        Specified by:
        applyDelete in interface io.prestosql.spi.connector.ConnectorMetadata
      • executeDelete

        public java.util.OptionalLong executeDelete​(io.prestosql.spi.connector.ConnectorSession session,
                                                    io.prestosql.spi.connector.ConnectorTableHandle handle)
        Specified by:
        executeDelete in interface io.prestosql.spi.connector.ConnectorMetadata
      • resolveIndex

        public java.util.Optional<io.prestosql.spi.connector.ConnectorResolvedIndex> resolveIndex​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                  io.prestosql.spi.connector.ConnectorTableHandle tableHandle,
                                                                                                  java.util.Set<io.prestosql.spi.connector.ColumnHandle> indexableColumns,
                                                                                                  java.util.Set<io.prestosql.spi.connector.ColumnHandle> outputColumns,
                                                                                                  io.prestosql.spi.predicate.TupleDomain<io.prestosql.spi.connector.ColumnHandle> tupleDomain)
        Specified by:
        resolveIndex in interface io.prestosql.spi.connector.ConnectorMetadata
      • createRole

        public void createRole​(io.prestosql.spi.connector.ConnectorSession session,
                               java.lang.String role,
                               java.util.Optional<io.prestosql.spi.security.PrestoPrincipal> grantor)
        Specified by:
        createRole in interface io.prestosql.spi.connector.ConnectorMetadata
      • dropRole

        public void dropRole​(io.prestosql.spi.connector.ConnectorSession session,
                             java.lang.String role)
        Specified by:
        dropRole in interface io.prestosql.spi.connector.ConnectorMetadata
      • listRoles

        public java.util.Set<java.lang.String> listRoles​(io.prestosql.spi.connector.ConnectorSession session)
        Specified by:
        listRoles in interface io.prestosql.spi.connector.ConnectorMetadata
      • listAllRoleGrants

        public java.util.Set<io.prestosql.spi.security.RoleGrant> listAllRoleGrants​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                    java.util.Optional<java.util.Set<java.lang.String>> roles,
                                                                                    java.util.Optional<java.util.Set<java.lang.String>> grantees,
                                                                                    java.util.OptionalLong limit)
        Specified by:
        listAllRoleGrants in interface io.prestosql.spi.connector.ConnectorMetadata
      • listRoleGrants

        public java.util.Set<io.prestosql.spi.security.RoleGrant> listRoleGrants​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                 io.prestosql.spi.security.PrestoPrincipal principal)
        Specified by:
        listRoleGrants in interface io.prestosql.spi.connector.ConnectorMetadata
      • grantRoles

        public void grantRoles​(io.prestosql.spi.connector.ConnectorSession connectorSession,
                               java.util.Set<java.lang.String> roles,
                               java.util.Set<io.prestosql.spi.security.PrestoPrincipal> grantees,
                               boolean adminOption,
                               java.util.Optional<io.prestosql.spi.security.PrestoPrincipal> grantor)
        Specified by:
        grantRoles in interface io.prestosql.spi.connector.ConnectorMetadata
      • revokeRoles

        public void revokeRoles​(io.prestosql.spi.connector.ConnectorSession connectorSession,
                                java.util.Set<java.lang.String> roles,
                                java.util.Set<io.prestosql.spi.security.PrestoPrincipal> grantees,
                                boolean adminOption,
                                java.util.Optional<io.prestosql.spi.security.PrestoPrincipal> grantor)
        Specified by:
        revokeRoles in interface io.prestosql.spi.connector.ConnectorMetadata
      • listApplicableRoles

        public java.util.Set<io.prestosql.spi.security.RoleGrant> listApplicableRoles​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                      io.prestosql.spi.security.PrestoPrincipal principal)
        Specified by:
        listApplicableRoles in interface io.prestosql.spi.connector.ConnectorMetadata
      • listEnabledRoles

        public java.util.Set<java.lang.String> listEnabledRoles​(io.prestosql.spi.connector.ConnectorSession session)
        Specified by:
        listEnabledRoles in interface io.prestosql.spi.connector.ConnectorMetadata
      • grantTablePrivileges

        public void grantTablePrivileges​(io.prestosql.spi.connector.ConnectorSession session,
                                         io.prestosql.spi.connector.SchemaTableName tableName,
                                         java.util.Set<io.prestosql.spi.security.Privilege> privileges,
                                         io.prestosql.spi.security.PrestoPrincipal grantee,
                                         boolean grantOption)
        Specified by:
        grantTablePrivileges in interface io.prestosql.spi.connector.ConnectorMetadata
      • revokeTablePrivileges

        public void revokeTablePrivileges​(io.prestosql.spi.connector.ConnectorSession session,
                                          io.prestosql.spi.connector.SchemaTableName tableName,
                                          java.util.Set<io.prestosql.spi.security.Privilege> privileges,
                                          io.prestosql.spi.security.PrestoPrincipal grantee,
                                          boolean grantOption)
        Specified by:
        revokeTablePrivileges in interface io.prestosql.spi.connector.ConnectorMetadata
      • listTablePrivileges

        public java.util.List<io.prestosql.spi.security.GrantInfo> listTablePrivileges​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                       io.prestosql.spi.connector.SchemaTablePrefix prefix)
        Specified by:
        listTablePrivileges in interface io.prestosql.spi.connector.ConnectorMetadata
      • usesLegacyTableLayouts

        public boolean usesLegacyTableLayouts()
        Specified by:
        usesLegacyTableLayouts in interface io.prestosql.spi.connector.ConnectorMetadata
      • getTableProperties

        public io.prestosql.spi.connector.ConnectorTableProperties getTableProperties​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                      io.prestosql.spi.connector.ConnectorTableHandle table)
        Specified by:
        getTableProperties in interface io.prestosql.spi.connector.ConnectorMetadata
      • applyLimit

        public java.util.Optional<io.prestosql.spi.connector.LimitApplicationResult<io.prestosql.spi.connector.ConnectorTableHandle>> applyLimit​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                                                                 io.prestosql.spi.connector.ConnectorTableHandle table,
                                                                                                                                                 long limit)
        Specified by:
        applyLimit in interface io.prestosql.spi.connector.ConnectorMetadata
      • applyFilter

        public java.util.Optional<io.prestosql.spi.connector.ConstraintApplicationResult<io.prestosql.spi.connector.ConnectorTableHandle>> applyFilter​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                                                                       io.prestosql.spi.connector.ConnectorTableHandle table,
                                                                                                                                                       io.prestosql.spi.connector.Constraint constraint)
        Specified by:
        applyFilter in interface io.prestosql.spi.connector.ConnectorMetadata
      • applyProjection

        public java.util.Optional<io.prestosql.spi.connector.ProjectionApplicationResult<io.prestosql.spi.connector.ConnectorTableHandle>> applyProjection​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                                                                           io.prestosql.spi.connector.ConnectorTableHandle table,
                                                                                                                                                           java.util.List<io.prestosql.spi.expression.ConnectorExpression> projections,
                                                                                                                                                           java.util.Map<java.lang.String,​io.prestosql.spi.connector.ColumnHandle> assignments)
        Specified by:
        applyProjection in interface io.prestosql.spi.connector.ConnectorMetadata
      • applySample

        public java.util.Optional<io.prestosql.spi.connector.ConnectorTableHandle> applySample​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                               io.prestosql.spi.connector.ConnectorTableHandle table,
                                                                                               io.prestosql.spi.connector.SampleType sampleType,
                                                                                               double sampleRatio)
        Specified by:
        applySample in interface io.prestosql.spi.connector.ConnectorMetadata
      • applyAggregation

        public java.util.Optional<io.prestosql.spi.connector.AggregationApplicationResult<io.prestosql.spi.connector.ConnectorTableHandle>> applyAggregation​(io.prestosql.spi.connector.ConnectorSession session,
                                                                                                                                                             io.prestosql.spi.connector.ConnectorTableHandle table,
                                                                                                                                                             java.util.List<io.prestosql.spi.connector.AggregateFunction> aggregates,
                                                                                                                                                             java.util.Map<java.lang.String,​io.prestosql.spi.connector.ColumnHandle> assignments,
                                                                                                                                                             java.util.List<java.util.List<io.prestosql.spi.connector.ColumnHandle>> groupingSets)
        Specified by:
        applyAggregation in interface io.prestosql.spi.connector.ConnectorMetadata
      • validateScan

        public void validateScan​(io.prestosql.spi.connector.ConnectorSession session,
                                 io.prestosql.spi.connector.ConnectorTableHandle handle)
        Specified by:
        validateScan in interface io.prestosql.spi.connector.ConnectorMetadata