#include "postgres.h"#include "catalog/objectaccess.h"#include "catalog/pg_namespace.h"#include "catalog/pg_proc.h"
Go to the source code of this file.
Functions | |
| void | RunObjectPostCreateHook (Oid classId, Oid objectId, int subId, bool is_internal) |
| void | RunObjectDropHook (Oid classId, Oid objectId, int subId, int dropflags) |
| void | RunObjectPostAlterHook (Oid classId, Oid objectId, int subId, Oid auxiliaryId, bool is_internal) |
| bool | RunNamespaceSearchHook (Oid objectId, bool ereport_on_violation) |
| void | RunFunctionExecuteHook (Oid objectId) |
Variables | |
| object_access_hook_type | object_access_hook = NULL |
| void RunFunctionExecuteHook | ( | Oid | objectId | ) |
Definition at line 120 of file objectaccess.c.
References Assert, NULL, and object_access_hook.
{
/* caller should check, but just in case... */
Assert(object_access_hook != NULL);
(*object_access_hook)(OAT_FUNCTION_EXECUTE,
ProcedureRelationId, objectId, 0,
NULL);
}
Definition at line 96 of file objectaccess.c.
References Assert, ObjectAccessNamespaceSearch::ereport_on_violation, NULL, object_access_hook, and ObjectAccessNamespaceSearch::result.
{
ObjectAccessNamespaceSearch ns_arg;
/* caller should check, but just in case... */
Assert(object_access_hook != NULL);
memset(&ns_arg, 0, sizeof(ObjectAccessNamespaceSearch));
ns_arg.ereport_on_violation = ereport_on_violation;
ns_arg.result = true;
(*object_access_hook)(OAT_NAMESPACE_SEARCH,
NamespaceRelationId, objectId, 0,
(void *) &ns_arg);
return ns_arg.result;
}
Definition at line 51 of file objectaccess.c.
References Assert, ObjectAccessDrop::dropflags, NULL, and object_access_hook.
{
ObjectAccessDrop drop_arg;
/* caller should check, but just in case... */
Assert(object_access_hook != NULL);
memset(&drop_arg, 0, sizeof(ObjectAccessDrop));
drop_arg.dropflags = dropflags;
(*object_access_hook)(OAT_DROP,
classId, objectId, subId,
(void *) &drop_arg);
}
| void RunObjectPostAlterHook | ( | Oid | classId, | |
| Oid | objectId, | |||
| int | subId, | |||
| Oid | auxiliaryId, | |||
| bool | is_internal | |||
| ) |
Definition at line 73 of file objectaccess.c.
References Assert, ObjectAccessPostAlter::auxiliary_id, ObjectAccessPostAlter::is_internal, NULL, and object_access_hook.
{
ObjectAccessPostAlter pa_arg;
/* caller should check, but just in case... */
Assert(object_access_hook != NULL);
memset(&pa_arg, 0, sizeof(ObjectAccessPostAlter));
pa_arg.auxiliary_id = auxiliaryId;
pa_arg.is_internal = is_internal;
(*object_access_hook)(OAT_POST_ALTER,
classId, objectId, subId,
(void *) &pa_arg);
}
Definition at line 29 of file objectaccess.c.
References Assert, ObjectAccessPostCreate::is_internal, NULL, and object_access_hook.
{
ObjectAccessPostCreate pc_arg;
/* caller should check, but just in case... */
Assert(object_access_hook != NULL);
memset(&pc_arg, 0, sizeof(ObjectAccessPostCreate));
pc_arg.is_internal = is_internal;
(*object_access_hook)(OAT_POST_CREATE,
classId, objectId, subId,
(void *) &pc_arg);
}
Definition at line 21 of file objectaccess.c.
Referenced by _PG_init(), RunFunctionExecuteHook(), RunNamespaceSearchHook(), RunObjectDropHook(), RunObjectPostAlterHook(), and RunObjectPostCreateHook().
1.7.1