110 engine::TaskProcessor& bg_task_processor,
112 DefaultCommandControls&& default_cmd_ctls,
115 testsuite::TestsuiteTasks& testsuite_tasks,
116 dynamic_config::Source config_source,
188 template <
typename... Args>
189 ResultSet Execute(ClusterHostTypeFlags,
const Query& query,
const Args&... args);
200 template <
typename... Args>
201 ResultSet Execute(ClusterHostTypeFlags, OptionalCommandControl,
const Query& query,
const Args&... args);
222 ClusterHostTypeFlags flags,
223 OptionalCommandControl statement_cmd_ctl,
232 NotifyScope
Listen(std::string_view channel, OptionalCommandControl = {});
240 void SetHandlersCommandControl(CommandControlByHandlerMap handlers_command_control);
242 void SetQueriesCommandControl(CommandControlByQueryMap queries_command_control);
258 void SetStatementMetricsSettings(
const StatementMetricsSettings& settings);
260 void SetDsnList(
const DsnList&);
263 detail::NonTransaction Start(ClusterHostTypeFlags, OptionalCommandControl);
265 OptionalCommandControl GetQueryCmdCtl(
const std::string& query_name)
const;
266 OptionalCommandControl GetHandlersCmdCtl(OptionalCommandControl cmd_ctl)
const;
268 detail::ClusterImplPtr pimpl_;
278 ClusterHostTypeFlags flags,
279 OptionalCommandControl statement_cmd_ctl,
283 if (!statement_cmd_ctl && query.GetName()) {
284 statement_cmd_ctl = GetQueryCmdCtl(query.GetName()->GetUnderlying());
286 statement_cmd_ctl = GetHandlersCmdCtl(statement_cmd_ctl);
287 auto ntrx = Start(flags, statement_cmd_ctl);
288 return ntrx.Execute(statement_cmd_ctl, query, args...);