presto-main/src/main/java/io/prestosql/split/PageSourceManager.java/PageSourceManager/createPageSource
class PageSourceManager:    @Override
    public ConnectorPageSource createPageSource(Session session, Split split, TableHandle table, List<ColumnHandle> columns, Supplier<TupleDomain<ColumnHandle>> dynamicFilter)
    {
        requireNonNull(columns, "columns is null");
        checkArgument(split.getCatalogName().equals(table.getCatalogName()), "mismatched split and table");
        CatalogName catalogName = split.getCatalogName();

        ConnectorPageSourceProvider provider = getPageSourceProvider(catalogName);
        TupleDomain<ColumnHandle> constraint = dynamicFilter.get();
        if (constraint.isAll()) {
            return provider.createPageSource(
                    table.getTransaction(),
                    session.toConnectorSession(catalogName),
                    split.getConnectorSplit(),
                    table.getConnectorHandle(),
                    columns);
        }
        if (constraint.isNone()) {
            return new FixedPageSource(ImmutableList.of());
        }
        return provider.createPageSource(
                table.getTransaction(),
                session.toConnectorSession(catalogName),
                split.getConnectorSplit(),
                table.getConnectorHandle(),
                columns,
                constraint);
    }