CUBRID Engine
latest
|
Go to the source code of this file.
Classes | |
struct | obj_tempassign |
struct | obj_template |
Macros | |
#define | OBT_BASE_OBJECT(template_ptr) |
#define | OBT_BASE_CLASS(template_ptr) |
#define | OBT_BASE_CLASSOBJ(template_ptr) |
Typedefs | |
typedef struct obj_tempassign | OBJ_TEMPASSIGN |
typedef struct obj_template | OBJ_TEMPLATE |
typedef struct obj_template * | OBT |
Variables | |
bool | obt_Check_uniques |
bool | obt_Enable_autoincrement |
bool | obt_Last_insert_id_generated |
#define OBT_BASE_CLASS | ( | template_ptr | ) |
Definition at line 41 of file object_template.h.
Referenced by obt_apply_assignments(), and obt_check_missing_assignments().
#define OBT_BASE_CLASSOBJ | ( | template_ptr | ) |
Definition at line 45 of file object_template.h.
Referenced by access_object(), and obt_apply_assignments().
#define OBT_BASE_OBJECT | ( | template_ptr | ) |
Definition at line 37 of file object_template.h.
Referenced by obj_get_temp(), obt_apply_assignments(), and obt_assign().
typedef struct obj_tempassign OBJ_TEMPASSIGN |
typedef struct obj_template OBJ_TEMPLATE |
typedef struct obj_template * OBT |
void obt_area_final | ( | void | ) |
Definition at line 185 of file object_template.c.
References area_destroy(), and NULL.
Referenced by obt_area_init(), and ws_init().
int obt_area_init | ( | void | ) |
Definition at line 155 of file object_template.c.
References area_create(), assert, er_errid(), error(), NO_ERROR, NULL, and obt_area_final().
Referenced by ws_init().
int obt_assign | ( | OBJ_TEMPLATE * | template_ptr, |
SM_ATTRIBUTE * | att, | ||
int | base_assignment, | ||
DB_VALUE * | value, | ||
SM_VALIDATION * | valid | ||
) |
Definition at line 1522 of file object_template.c.
References assert, obj_template::assignments, obj_template::base_class, obj_template::base_classobj, obj_template::classobj, DB_AUTH_INSERT, DB_AUTH_UPDATE, db_make_null(), obj_template::discard_on_finish, er_errid(), ER_OBJ_DUPLICATE_ASSIGNMENT, ER_OBJ_INVALID_ARGUMENTS, error(), ERROR0, ERROR1, obj_template::force_check_not_null, sm_attribute::header, mq_update_attribute(), sm_component::name, NO_ERROR, NULL, obj_template::object, OBT_BASE_OBJECT, obt_check_assignment(), obt_find_attribute(), obt_make_assignment(), sm_attribute::order, pr_clear_value(), pr_clone_value(), pr_free_ext_value(), pr_make_ext_value(), validate_template(), and obj_tempassign::variable.
Referenced by obj_copy(), obj_set_att(), obj_set_temp(), obt_desc_set(), and obt_set().
void obt_begin_insert_values | ( | void | ) |
Definition at line 3089 of file object_template.c.
References obt_Last_insert_id_generated.
Referenced by do_execute_merge(), do_merge(), and insert_local().
DB_VALUE* obt_check_assignment | ( | SM_ATTRIBUTE * | att, |
DB_VALUE * | proposed_value, | ||
SM_VALIDATION * | valid, | ||
unsigned | force_check_not_null | ||
) |
Definition at line 649 of file object_template.c.
References cache_validation(), check_att_domain(), check_constraints(), NO_ERROR, NULL, pr_free_ext_value(), pr_make_ext_value(), and quick_validate().
Referenced by obj_set_att(), obj_set_shared(), and obt_assign().
int obt_check_missing_assignments | ( | OBJ_TEMPLATE * | template_ptr | ) |
Definition at line 2157 of file object_template.c.
References obj_template::assignments, obj_template::class_, DB_DEFAULT_NONE, DB_IS_NULL, sm_default_value::default_expr, db_default_expr::default_expr_type, sm_attribute::default_value, ER_OBJ_MISSING_NON_NULL_ASSIGN, ER_SM_OBJECT_ID_NOT_SET, error(), ERROR1, sm_attribute::flags, sm_attribute::header, sm_component::name, NO_ERROR, NULL, obj_template::object, OBT_BASE_CLASS, sm_attribute::order, sm_attribute::order_link, sm_class::ordered_attributes, SM_ATTFLAG_NON_NULL, SM_ATTFLAG_VID, sm_ch_name(), and sm_default_value::value.
Referenced by obt_final_check().
OBJ_TEMPLATE* obt_def_object | ( | MOP | class_ | ) |
Definition at line 1408 of file object_template.c.
References ARG_FILE_LINE, DB_FETCH_CLREAD_INSTWRITE, ER_ERROR_SEVERITY, ER_OBJ_NOT_A_CLASS, er_set(), is_class(), locator_is_class(), make_template(), and NULL.
Referenced by dbt_create_object_internal(), obj_copy(), and obj_create().
int obt_desc_set | ( | OBJ_TEMPLATE * | template_ptr, |
SM_DESCRIPTOR * | desc, | ||
DB_VALUE * | value | ||
) |
Definition at line 1834 of file object_template.c.
References assert, obj_template::classobj, db_get_pointer(), DB_TYPE_POINTER, DB_VALUE_TYPE, er_errid(), ER_OBJ_INVALID_ARGUMENTS, error(), ERROR0, NO_ERROR, NULL, obt_assign(), obt_assign_obt(), sm_get_descriptor_component(), sm_descriptor::valid, and validate_template().
Referenced by dbt_dput_internal().
void obt_disable_serializable_conflict_checking | ( | OBJ_TEMPLATE * | template_ptr | ) |
Definition at line 2781 of file object_template.c.
References obj_template::check_serializable_conflict.
Referenced by update_object_tuple().
void obt_disable_unique_checking | ( | OBJ_TEMPLATE * | template_ptr | ) |
Definition at line 2766 of file object_template.c.
References obj_template::check_uniques.
Referenced by update_object_tuple().
OBJ_TEMPLATE* obt_edit_object | ( | MOP | object | ) |
Definition at line 1439 of file object_template.c.
References ARG_FILE_LINE, DB_FETCH_CLREAD_INSTWRITE, ER_ERROR_SEVERITY, ER_OBJ_INVALID_TEMP_OBJECT, er_set(), is_class(), db_object::is_temp, locator_is_class(), make_template(), NULL, and sm_get_class().
Referenced by dbt_edit_object(), and obj_set_att().
Definition at line 2801 of file object_template.c.
References obt_Check_uniques.
Referenced by ldr_init().
int obt_find_attribute | ( | OBJ_TEMPLATE * | template_ptr, |
int | use_base_class, | ||
const char * | name, | ||
SM_ATTRIBUTE ** | attp | ||
) |
Definition at line 215 of file object_template.c.
References ARG_FILE_LINE, AU_ALTER, au_fetch_class(), AU_FETCH_UPDATE, obj_template::base_class, obj_template::base_classobj, obj_template::class_, obj_template::classobj, classobj_find_attribute(), ER_ERROR_SEVERITY, ER_OBJ_INVALID_ATTRIBUTE, ER_OBJ_TEMPLATE_INTERNAL, er_set(), error(), ERROR1, sm_attribute::header, ID_SHARED_ATTRIBUTE, obj_template::is_class_update, sm_component::name_space, NO_ERROR, NULL, and obj_template::write_lock.
Referenced by obt_assign(), obt_assign_obt(), obt_set(), and populate_defaults().
int obt_populate_known_arguments | ( | OBJ_TEMPLATE * | template_ptr | ) |
Definition at line 3049 of file object_template.c.
References assert, er_errid(), obj_template::is_class_update, NO_ERROR, obt_Enable_autoincrement, populate_auto_increment(), populate_defaults(), and validate_template().
Referenced by do_find_unique_constraint_violations().
int obt_quit | ( | OBJ_TEMPLATE * | template_ptr | ) |
Definition at line 1489 of file object_template.c.
References NO_ERROR, NULL, and obt_free_template().
Referenced by dbt_abort_object(), do_insert_template(), insert_subquery_results(), obj_copy(), obj_create(), obj_set_att(), and pt_set_value_to_db().
void obt_reset_force_flush | ( | OBJ_TEMPLATE * | template_ptr | ) |
Definition at line 2830 of file object_template.c.
References assert, obj_template::force_flush, and NULL.
void obt_retain_after_finish | ( | OBJ_TEMPLATE * | template_ptr | ) |
Definition at line 2844 of file object_template.c.
References assert, obj_template::discard_on_finish, and NULL.
Referenced by do_insert_template(), and insert_subquery_results().
int obt_set | ( | OBJ_TEMPLATE * | template_ptr, |
const char * | attname, | ||
DB_VALUE * | value | ||
) |
Definition at line 1767 of file object_template.c.
References assert, db_get_pointer(), DB_TYPE_POINTER, DB_VALUE_TYPE, er_errid(), ER_OBJ_INVALID_ARGUMENTS, error(), ERROR0, NO_ERROR, NULL, obt_assign(), obt_assign_obt(), obt_find_attribute(), and validate_template().
Referenced by dbt_put_internal(), and obt_set_obt().
void obt_set_force_flush | ( | OBJ_TEMPLATE * | template_ptr | ) |
Definition at line 2816 of file object_template.c.
References assert, obj_template::force_flush, and NULL.
Referenced by do_insert_template(), insert_subquery_results(), and update_object_tuple().
void obt_set_label | ( | OBJ_TEMPLATE * | template_ptr, |
DB_VALUE * | label | ||
) |
Definition at line 2748 of file object_template.c.
References obj_template::label.
Referenced by dbt_set_label().
int obt_set_obt | ( | OBJ_TEMPLATE * | template_ptr, |
const char * | attname, | ||
OBJ_TEMPLATE * | value | ||
) |
Definition at line 1813 of file object_template.c.
References db_make_pointer(), and obt_set().
Referenced by dbt_put_internal().
int obt_update | ( | OBJ_TEMPLATE * | template_ptr, |
MOP * | newobj | ||
) |
Definition at line 2968 of file object_template.c.
References obt_update_internal().
Referenced by dbt_finish_object(), dbt_finish_object_and_decache_when_failure(), and obj_set_att().
int obt_update_internal | ( | OBJ_TEMPLATE * | template_ptr, |
MOP * | newobj, | ||
int | check_non_null | ||
) |
Definition at line 2860 of file object_template.c.
References assert, begin_template_traversal(), obj_template::check_uniques, DB_CLIENT_TYPE_LOG_APPLIER, db_get_client_type(), obj_template::discard_on_finish, er_errid(), ER_LK_UNILATERALLY_ABORTED, error(), obj_template::fkeys_were_modified, obj_template::force_flush, obj_template::function_key_modified, NO_ERROR, NULL, OBJ_INTERNAL_SAVEPOINT_NAME, obj_template::object, obt_apply_assignments(), obt_final_check(), obt_free_template(), template_savepoint_count, tran_abort_upto_system_savepoint(), tran_system_savepoint(), and validate_template().
Referenced by obj_copy(), obj_create(), and obt_update().
bool obt_Check_uniques |
Definition at line 75 of file object_template.c.
Referenced by make_template(), and obt_enable_unique_checking().
bool obt_Enable_autoincrement |
Definition at line 81 of file object_template.c.
Referenced by loaddb_internal(), obt_final_check(), and obt_populate_known_arguments().
bool obt_Last_insert_id_generated |
Definition at line 88 of file object_template.c.
Referenced by insert_local(), obt_begin_insert_values(), populate_auto_increment(), and pt_evaluate_db_value_expr().