Class FileSystemTableSource

java.lang.Object
org.apache.flink.connector.file.table.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)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.flink.table.connector.source.abilities.SupportsFilterPushDown.Result
    applyFilters(List<org.apache.flink.table.expressions.ResolvedExpression> filters)
     
    void
    applyLimit(long limit)
     
    void
    applyPartitions(List<Map<String,String>> remainingPartitions)
     
    void
    applyProjection(int[][] projectedFields, org.apache.flink.table.types.DataType producedDataType)
     
    void
    applyReadableMetadata(List<String> metadataKeys, org.apache.flink.table.types.DataType producedDataType)
     
     
     
    org.apache.flink.table.connector.ChangelogMode
     
    org.apache.flink.table.connector.source.ScanTableSource.ScanRuntimeProvider
    getScanRuntimeProvider(org.apache.flink.table.connector.source.ScanTableSource.ScanContext scanContext)
     
     
    Map<String,org.apache.flink.table.types.DataType>
     
    org.apache.flink.table.plan.stats.TableStats
     
    boolean
     

    Methods inherited from class java.lang.Object

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

    Methods inherited from interface org.apache.flink.table.connector.source.abilities.SupportsReadingMetadata

    supportsMetadataProjection
  • Constructor Details

    • 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 Details

    • 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