[−][src]Trait pgx::hooks::PgHooks
Provided methods
fn executor_start(
&mut self,
query_desc: PgBox<QueryDesc>,
eflags: i32,
prev_hook: fn(query_desc: PgBox<QueryDesc>, eflags: i32) -> HookResult<()>
) -> HookResult<()>
&mut self,
query_desc: PgBox<QueryDesc>,
eflags: i32,
prev_hook: fn(query_desc: PgBox<QueryDesc>, eflags: i32) -> HookResult<()>
) -> HookResult<()>
Hook for plugins to get control in ExecutorStart()
fn executor_run(
&mut self,
query_desc: PgBox<QueryDesc>,
direction: ScanDirection,
count: u64,
execute_once: bool,
prev_hook: fn(query_desc: PgBox<QueryDesc>, direction: ScanDirection, count: u64, execute_once: bool) -> HookResult<()>
) -> HookResult<()>
&mut self,
query_desc: PgBox<QueryDesc>,
direction: ScanDirection,
count: u64,
execute_once: bool,
prev_hook: fn(query_desc: PgBox<QueryDesc>, direction: ScanDirection, count: u64, execute_once: bool) -> HookResult<()>
) -> HookResult<()>
Hook for plugins to get control in ExecutorRun()
fn executor_finish(
&mut self,
query_desc: PgBox<QueryDesc>,
prev_hook: fn(query_desc: PgBox<QueryDesc>) -> HookResult<()>
) -> HookResult<()>
&mut self,
query_desc: PgBox<QueryDesc>,
prev_hook: fn(query_desc: PgBox<QueryDesc>) -> HookResult<()>
) -> HookResult<()>
Hook for plugins to get control in ExecutorFinish()
fn executor_end(
&mut self,
query_desc: PgBox<QueryDesc>,
prev_hook: fn(query_desc: PgBox<QueryDesc>) -> HookResult<()>
) -> HookResult<()>
&mut self,
query_desc: PgBox<QueryDesc>,
prev_hook: fn(query_desc: PgBox<QueryDesc>) -> HookResult<()>
) -> HookResult<()>
Hook for plugins to get control in ExecutorEnd()
fn executor_check_perms(
&mut self,
range_table: PgList<*mut RangeTblEntry>,
ereport_on_violation: bool,
prev_hook: fn(range_table: PgList<*mut RangeTblEntry>, ereport_on_violation: bool) -> HookResult<bool>
) -> HookResult<bool>
&mut self,
range_table: PgList<*mut RangeTblEntry>,
ereport_on_violation: bool,
prev_hook: fn(range_table: PgList<*mut RangeTblEntry>, ereport_on_violation: bool) -> HookResult<bool>
) -> HookResult<bool>
Hook for plugins to get control in ExecCheckRTPerms()
fn process_utility_hook(
&mut self,
pstmt: PgBox<PlannedStmt>,
query_string: &CStr,
context: ProcessUtilityContext,
params: PgBox<ParamListInfoData>,
query_env: PgBox<QueryEnvironment>,
dest: PgBox<DestReceiver>,
completion_tag: *mut c_char,
prev_hook: fn(pstmt: PgBox<PlannedStmt>, query_string: &CStr, context: ProcessUtilityContext, params: PgBox<ParamListInfoData>, query_env: PgBox<QueryEnvironment>, dest: PgBox<DestReceiver>, completion_tag: *mut c_char) -> HookResult<()>
) -> HookResult<()>
&mut self,
pstmt: PgBox<PlannedStmt>,
query_string: &CStr,
context: ProcessUtilityContext,
params: PgBox<ParamListInfoData>,
query_env: PgBox<QueryEnvironment>,
dest: PgBox<DestReceiver>,
completion_tag: *mut c_char,
prev_hook: fn(pstmt: PgBox<PlannedStmt>, query_string: &CStr, context: ProcessUtilityContext, params: PgBox<ParamListInfoData>, query_env: PgBox<QueryEnvironment>, dest: PgBox<DestReceiver>, completion_tag: *mut c_char) -> HookResult<()>
) -> HookResult<()>
Hook for plugins to get control in ProcessUtility()
fn planner(
&mut self,
parse: PgBox<Query>,
cursor_options: i32,
bound_params: PgBox<ParamListInfoData>,
prev_hook: fn(parse: PgBox<Query>, cursor_options: i32, bound_params: PgBox<ParamListInfoData>) -> HookResult<*mut PlannedStmt>
) -> HookResult<*mut PlannedStmt>
&mut self,
parse: PgBox<Query>,
cursor_options: i32,
bound_params: PgBox<ParamListInfoData>,
prev_hook: fn(parse: PgBox<Query>, cursor_options: i32, bound_params: PgBox<ParamListInfoData>) -> HookResult<*mut PlannedStmt>
) -> HookResult<*mut PlannedStmt>
Hook for plugins to get control of the planner
fn abort(&mut self)
Called when the transaction aborts
fn commit(&mut self)
Called when the transaction commits