#include "yql_pg_provider.h" #include "yql_pg_provider_impl.h" #include #include namespace NYql { TDataProviderInitializer GetPgDataProviderInitializer() { return [] ( const TString& userName, const TString& sessionId, const TGatewaysConfig* gatewaysConfig, const NKikimr::NMiniKQL::IFunctionRegistry* functionRegistry, TIntrusivePtr randomProvider, TIntrusivePtr typeCtx, const TOperationProgressWriter& progressWriter, const TYqlOperationOptions& operationOptions, THiddenQueryAborter hiddenAborter, const TQContext& qContext ) { Y_UNUSED(userName); Y_UNUSED(sessionId); Y_UNUSED(gatewaysConfig); Y_UNUSED(functionRegistry); Y_UNUSED(randomProvider); Y_UNUSED(typeCtx); Y_UNUSED(progressWriter); Y_UNUSED(operationOptions); Y_UNUSED(hiddenAborter); Y_UNUSED(qContext); auto state = MakeIntrusive(); state->Types = typeCtx.Get(); TDataProviderInfo info; info.Names.insert(TString{PgProviderName}); info.Source = CreatePgDataSource(state); info.Sink = CreatePgDataSink(state); info.OpenSession = []( const TString& sessionId, const TString& username, const TOperationProgressWriter& progressWriter, const TYqlOperationOptions& operationOptions, TIntrusivePtr randomProvider, TIntrusivePtr timeProvider) { Y_UNUSED(sessionId); Y_UNUSED(username); Y_UNUSED(progressWriter); Y_UNUSED(operationOptions); Y_UNUSED(randomProvider); Y_UNUSED(timeProvider); return NThreading::MakeFuture(); }; info.CloseSessionAsync = [](const TString& sessionId) { Y_UNUSED(sessionId); return NThreading::MakeFuture(); }; return info; }; } }