Class FileSystemTableSource

  • All Implemented Interfaces:
    org.apache.flink.table.connector.source.abilities.SupportsFilterPushDown, org.apache.flink.table.connector.source.abilities.SupportsLimitPushDown, org.apache.flink.table.connector.source.abilities.SupportsPartitionPushDown, org.apache.flink.table.connector.source.abilities.SupportsProjectionPushDown, org.apache.flink.table.connector.source.abilities.SupportsReadingMetadata, org.apache.flink.table.connector.source.abilities.SupportsStatisticReport, org.apache.flink.table.connector.source.DynamicTableSource, org.apache.flink.table.connector.source.ScanTableSource

    @Internal
    public class FileSystemTableSource
    extends Object
    implements org.apache.flink.table.connector.source.ScanTableSource, org.apache.flink.table.connector.source.abilities.SupportsProjectionPushDown, org.apache.flink.table.connector.source.abilities.SupportsLimitPushDown, org.apache.flink.table.connector.source.abilities.SupportsPartitionPushDown, org.apache.flink.table.connector.source.abilities.SupportsFilterPushDown, org.apache.flink.table.connector.source.abilities.SupportsReadingMetadata, org.apache.flink.table.connector.source.abilities.SupportsStatisticReport
    File system table source.
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.apache.flink.table.connector.source.DynamicTableSource

        org.apache.flink.table.connector.source.DynamicTableSource.Context, org.apache.flink.table.connector.source.DynamicTableSource.DataStructureConverter
      • Nested classes/interfaces inherited from interface org.apache.flink.table.connector.source.ScanTableSource

        org.apache.flink.table.connector.source.ScanTableSource.ScanContext, org.apache.flink.table.connector.source.ScanTableSource.ScanRuntimeProvider
      • Nested classes/interfaces inherited from interface org.apache.flink.table.connector.source.abilities.SupportsFilterPushDown

        org.apache.flink.table.connector.source.abilities.SupportsFilterPushDown.Result
    • Constructor Summary

      Constructors 
      Constructor Description
      FileSystemTableSource​(org.apache.flink.table.catalog.ObjectIdentifier tableIdentifier, org.apache.flink.table.types.DataType physicalRowDataType, List<String> partitionKeys, org.apache.flink.configuration.ReadableConfig tableOptions, org.apache.flink.table.connector.format.DecodingFormat<BulkFormat<org.apache.flink.table.data.RowData,​FileSourceSplit>> bulkReaderFormat, org.apache.flink.table.connector.format.DecodingFormat<org.apache.flink.api.common.serialization.DeserializationSchema<org.apache.flink.table.data.RowData>> deserializationFormat)  
    • Constructor Detail

      • FileSystemTableSource

        public FileSystemTableSource​(org.apache.flink.table.catalog.ObjectIdentifier tableIdentifier,
                                     org.apache.flink.table.types.DataType physicalRowDataType,
                                     List<String> partitionKeys,
                                     org.apache.flink.configuration.ReadableConfig tableOptions,
                                     @Nullable
                                     org.apache.flink.table.connector.format.DecodingFormat<BulkFormat<org.apache.flink.table.data.RowData,​FileSourceSplit>> bulkReaderFormat,
                                     @Nullable
                                     org.apache.flink.table.connector.format.DecodingFormat<org.apache.flink.api.common.serialization.DeserializationSchema<org.apache.flink.table.data.RowData>> deserializationFormat)
    • Method Detail

      • getScanRuntimeProvider

        public org.apache.flink.table.connector.source.ScanTableSource.ScanRuntimeProvider getScanRuntimeProvider​(org.apache.flink.table.connector.source.ScanTableSource.ScanContext scanContext)
        Specified by:
        getScanRuntimeProvider in interface org.apache.flink.table.connector.source.ScanTableSource
      • getChangelogMode

        public org.apache.flink.table.connector.ChangelogMode getChangelogMode()
        Specified by:
        getChangelogMode in interface org.apache.flink.table.connector.source.ScanTableSource
      • applyFilters

        public org.apache.flink.table.connector.source.abilities.SupportsFilterPushDown.Result applyFilters​(List<org.apache.flink.table.expressions.ResolvedExpression> filters)
        Specified by:
        applyFilters in interface org.apache.flink.table.connector.source.abilities.SupportsFilterPushDown
      • applyLimit

        public void applyLimit​(long limit)
        Specified by:
        applyLimit in interface org.apache.flink.table.connector.source.abilities.SupportsLimitPushDown
      • listPartitions

        public Optional<List<Map<String,​String>>> listPartitions()
        Specified by:
        listPartitions in interface org.apache.flink.table.connector.source.abilities.SupportsPartitionPushDown
      • applyPartitions

        public void applyPartitions​(List<Map<String,​String>> remainingPartitions)
        Specified by:
        applyPartitions in interface org.apache.flink.table.connector.source.abilities.SupportsPartitionPushDown
      • supportsNestedProjection

        public boolean supportsNestedProjection()
        Specified by:
        supportsNestedProjection in interface org.apache.flink.table.connector.source.abilities.SupportsProjectionPushDown
      • reportStatistics

        public org.apache.flink.table.plan.stats.TableStats reportStatistics()
        Specified by:
        reportStatistics in interface org.apache.flink.table.connector.source.abilities.SupportsStatisticReport
      • copy

        public FileSystemTableSource copy()
        Specified by:
        copy in interface org.apache.flink.table.connector.source.DynamicTableSource
      • asSummaryString

        public String asSummaryString()
        Specified by:
        asSummaryString in interface org.apache.flink.table.connector.source.DynamicTableSource
      • applyProjection

        public void applyProjection​(int[][] projectedFields,
                                    org.apache.flink.table.types.DataType producedDataType)
        Specified by:
        applyProjection in interface org.apache.flink.table.connector.source.abilities.SupportsProjectionPushDown
      • applyReadableMetadata

        public void applyReadableMetadata​(List<String> metadataKeys,
                                          org.apache.flink.table.types.DataType producedDataType)
        Specified by:
        applyReadableMetadata in interface org.apache.flink.table.connector.source.abilities.SupportsReadingMetadata
      • listReadableMetadata

        public Map<String,​org.apache.flink.table.types.DataType> listReadableMetadata()
        Specified by:
        listReadableMetadata in interface org.apache.flink.table.connector.source.abilities.SupportsReadingMetadata