Skip to content

File object_template.c

FileList > cubrid > src > object > object_template.c

Go to the source code of this file

  • #include "config.h"
  • #include <stdio.h>
  • #include <stdlib.h>
  • #include <string.h>
  • #include <ctype.h>
  • #include <stdarg.h>
  • #include <assert.h>
  • #include "db.h"
  • #include "dbtype.h"
  • #include "error_manager.h"
  • #include "system_parameter.h"
  • #include "server_interface.h"
  • #include "work_space.h"
  • #include "object_domain.h"
  • #include "object_primitive.h"
  • #include "object_representation.h"
  • #include "set_object.h"
  • #include "class_object.h"
  • #include "schema_manager.h"
  • #include "object_accessor.h"
  • #include "view_transform.h"
  • #include "authenticate.h"
  • #include "locator_cl.h"
  • #include "virtual_object.h"
  • #include "parser.h"
  • #include "transaction_cl.h"
  • #include "trigger_manager.h"
  • #include "environment_variable.h"
  • #include "transform.h"
  • #include "schema_system_catalog_constants.h"
  • #include "execute_statement.h"
  • #include "network_interface_cl.h"

Public Attributes

Type Name
bool obt_Check_uniques = [**true**](broker__monitor_8c.md#function-timeout)
bool obt_Enable_autoincrement = [**true**](broker__monitor_8c.md#function-timeout)
bool obt_Last_insert_id_generated = [**false**](broker__monitor_8c.md#function-timeout)

Public Static Attributes

Type Name
AREA * Assignment_area = [**NULL**](freelistheap_8h.md#define-null)
AREA * Template_area = [**NULL**](freelistheap_8h.md#define-null)
unsigned int obj_Template_traversal = 0
unsigned int template_savepoint_count = 0

Public Functions

Type Name
void obt_area_final (void)
int obt_area_init (void)
int obt_assign (OBJ_TEMPLATE * template_ptr, SM_ATTRIBUTE * att, int base_assignment, DB_VALUE * value, SM_VALIDATION * valid)
void obt_begin_insert_values (void)
DB_VALUE * obt_check_assignment (SM_ATTRIBUTE * att, DB_VALUE * proposed_value, SM_VALIDATION * valid, unsigned force_check_not_null)
int obt_check_missing_assignments (OBJ_TEMPLATE * template_ptr)
OBJ_TEMPLATE * obt_def_object (MOP class_mop)
int obt_desc_set (OBJ_TEMPLATE * template_ptr, SM_DESCRIPTOR * desc, DB_VALUE * value)
void obt_disable_serializable_conflict_checking (OBJ_TEMPLATE * template_ptr)
void obt_disable_unique_checking (OBJ_TEMPLATE * template_ptr)
OBJ_TEMPLATE * obt_edit_object (MOP object)
bool obt_enable_unique_checking (bool new_state)
int obt_find_attribute (OBJ_TEMPLATE * template_ptr, int use_base_class, const char * name, SM_ATTRIBUTE ** attp)
int obt_populate_known_arguments (OBJ_TEMPLATE * template_ptr)
int obt_quit (OBJ_TEMPLATE * template_ptr)
void obt_reset_force_flush (OBJ_TEMPLATE * template_ptr)
void obt_retain_after_finish (OBJ_TEMPLATE * template_ptr)
int obt_set (OBJ_TEMPLATE * template_ptr, const char * attname, DB_VALUE * value)
void obt_set_force_flush (OBJ_TEMPLATE * template_ptr)
void obt_set_label (OBJ_TEMPLATE * template_ptr, DB_VALUE * label)
int obt_set_obt (OBJ_TEMPLATE * template_ptr, const char * attname, OBJ_TEMPLATE * value)
int obt_update (OBJ_TEMPLATE * template_ptr, MOP * newobj)
int obt_update_internal (OBJ_TEMPLATE * template_ptr, MOP * newobj, int check_non_null)

Public Static Functions

Type Name
int access_object (OBJ_TEMPLATE * template_ptr, MOP * object, MOBJ * objptr)
void begin_template_traversal (void)
void cache_validation (SM_VALIDATION * valid, DB_VALUE * value)
DB_VALUE * check_att_domain (SM_ATTRIBUTE * att, DB_VALUE * proposed_value)
int check_constraints (SM_ATTRIBUTE * att, DB_VALUE * value, unsigned force_check_not_null)
MOP create_template_object (OBJ_TEMPLATE * template_ptr)
void free_temp_object (MOP obj)
MOP make_temp_object (DB_OBJECT * class_, OBJ_TEMPLATE * object)
OBJ_TEMPLATE * make_template (MOP object, MOP classobj)
int obt_apply_assignment (MOP op, SM_ATTRIBUTE * att, char * mem, DB_VALUE * value, int check_uniques)
int obt_apply_assignments (OBJ_TEMPLATE * template_ptr, int check_uniques, int level)
int obt_assign_obt (OBJ_TEMPLATE * template_ptr, SM_ATTRIBUTE * att, int base_assignment, OBJ_TEMPLATE * value)
int obt_convert_set_templates (SETREF * setref, int check_uniques)
int obt_final_check (OBJ_TEMPLATE * template_ptr, int check_non_null, int * has_uniques)
int obt_final_check_set (SETREF * setref, int * has_uniques)
void obt_free_assignment (OBJ_TEMPASSIGN * assign)
void obt_free_template (OBJ_TEMPLATE * template_ptr)
OBJ_TEMPASSIGN * obt_make_assignment (OBJ_TEMPLATE * template_ptr, SM_ATTRIBUTE * att)
int populate_auto_increment (OBJ_TEMPLATE * template_ptr)
int populate_defaults (OBJ_TEMPLATE * template_ptr)
int quick_validate (SM_VALIDATION * valid, DB_VALUE * value)
int validate_template (OBJ_TEMPLATE * temp)

Macros

Type Name
define OBJ_INTERNAL_SAVEPOINT_NAME "\*template-unique\*"

Public Attributes Documentation

variable obt_Check_uniques

bool obt_Check_uniques;

variable obt_Enable_autoincrement

bool obt_Enable_autoincrement;

variable obt_Last_insert_id_generated

bool obt_Last_insert_id_generated;

Public Static Attributes Documentation

variable Assignment_area

AREA* Assignment_area;

variable Template_area

AREA* Template_area;

variable obj_Template_traversal

unsigned int obj_Template_traversal;

variable template_savepoint_count

unsigned int template_savepoint_count;

Public Functions Documentation

function obt_area_final

void obt_area_final (
    void
) 

function obt_area_init

int obt_area_init (
    void
) 

function obt_assign

int obt_assign (
    OBJ_TEMPLATE * template_ptr,
    SM_ATTRIBUTE * att,
    int base_assignment,
    DB_VALUE * value,
    SM_VALIDATION * valid
) 

function obt_begin_insert_values

void obt_begin_insert_values (
    void
) 

function obt_check_assignment

DB_VALUE * obt_check_assignment (
    SM_ATTRIBUTE * att,
    DB_VALUE * proposed_value,
    SM_VALIDATION * valid,
    unsigned force_check_not_null
) 

function obt_check_missing_assignments

int obt_check_missing_assignments (
    OBJ_TEMPLATE * template_ptr
) 

function obt_def_object

OBJ_TEMPLATE * obt_def_object (
    MOP class_mop
) 

function obt_desc_set

int obt_desc_set (
    OBJ_TEMPLATE * template_ptr,
    SM_DESCRIPTOR * desc,
    DB_VALUE * value
) 

function obt_disable_serializable_conflict_checking

void obt_disable_serializable_conflict_checking (
    OBJ_TEMPLATE * template_ptr
) 

function obt_disable_unique_checking

void obt_disable_unique_checking (
    OBJ_TEMPLATE * template_ptr
) 

function obt_edit_object

OBJ_TEMPLATE * obt_edit_object (
    MOP object
) 

function obt_enable_unique_checking

bool obt_enable_unique_checking (
    bool new_state
) 

function obt_find_attribute

int obt_find_attribute (
    OBJ_TEMPLATE * template_ptr,
    int use_base_class,
    const  char * name,
    SM_ATTRIBUTE ** attp
) 

function obt_populate_known_arguments

int obt_populate_known_arguments (
    OBJ_TEMPLATE * template_ptr
) 

function obt_quit

int obt_quit (
    OBJ_TEMPLATE * template_ptr
) 

function obt_reset_force_flush

void obt_reset_force_flush (
    OBJ_TEMPLATE * template_ptr
) 

function obt_retain_after_finish

void obt_retain_after_finish (
    OBJ_TEMPLATE * template_ptr
) 

function obt_set

int obt_set (
    OBJ_TEMPLATE * template_ptr,
    const  char * attname,
    DB_VALUE * value
) 

function obt_set_force_flush

void obt_set_force_flush (
    OBJ_TEMPLATE * template_ptr
) 

function obt_set_label

void obt_set_label (
    OBJ_TEMPLATE * template_ptr,
    DB_VALUE * label
) 

function obt_set_obt

int obt_set_obt (
    OBJ_TEMPLATE * template_ptr,
    const  char * attname,
    OBJ_TEMPLATE * value
) 

function obt_update

int obt_update (
    OBJ_TEMPLATE * template_ptr,
    MOP * newobj
) 

function obt_update_internal

int obt_update_internal (
    OBJ_TEMPLATE * template_ptr,
    MOP * newobj,
    int check_non_null
) 

Public Static Functions Documentation

function access_object

static int access_object (
    OBJ_TEMPLATE * template_ptr,
    MOP * object,
    MOBJ * objptr
) 

function begin_template_traversal

static void begin_template_traversal (
    void
) 

function cache_validation

static void cache_validation (
    SM_VALIDATION * valid,
    DB_VALUE * value
) 

function check_att_domain

static DB_VALUE * check_att_domain (
    SM_ATTRIBUTE * att,
    DB_VALUE * proposed_value
) 

function check_constraints

static int check_constraints (
    SM_ATTRIBUTE * att,
    DB_VALUE * value,
    unsigned force_check_not_null
) 

function create_template_object

static MOP create_template_object (
    OBJ_TEMPLATE * template_ptr
) 

function free_temp_object

static void free_temp_object (
    MOP obj
) 

function make_temp_object

static MOP make_temp_object (
    DB_OBJECT * class_,
    OBJ_TEMPLATE * object
) 

function make_template

static OBJ_TEMPLATE * make_template (
    MOP object,
    MOP classobj
) 

function obt_apply_assignment

static int obt_apply_assignment (
    MOP op,
    SM_ATTRIBUTE * att,
    char * mem,
    DB_VALUE * value,
    int check_uniques
) 

function obt_apply_assignments

static int obt_apply_assignments (
    OBJ_TEMPLATE * template_ptr,
    int check_uniques,
    int level
) 

function obt_assign_obt

static int obt_assign_obt (
    OBJ_TEMPLATE * template_ptr,
    SM_ATTRIBUTE * att,
    int base_assignment,
    OBJ_TEMPLATE * value
) 

function obt_convert_set_templates

static int obt_convert_set_templates (
    SETREF * setref,
    int check_uniques
) 

function obt_final_check

static int obt_final_check (
    OBJ_TEMPLATE * template_ptr,
    int check_non_null,
    int * has_uniques
) 

function obt_final_check_set

static int obt_final_check_set (
    SETREF * setref,
    int * has_uniques
) 

function obt_free_assignment

static void obt_free_assignment (
    OBJ_TEMPASSIGN * assign
) 

function obt_free_template

static void obt_free_template (
    OBJ_TEMPLATE * template_ptr
) 

function obt_make_assignment

static OBJ_TEMPASSIGN * obt_make_assignment (
    OBJ_TEMPLATE * template_ptr,
    SM_ATTRIBUTE * att
) 

function populate_auto_increment

static int populate_auto_increment (
    OBJ_TEMPLATE * template_ptr
) 

function populate_defaults

static int populate_defaults (
    OBJ_TEMPLATE * template_ptr
) 

function quick_validate

static int quick_validate (
    SM_VALIDATION * valid,
    DB_VALUE * value
) 

function validate_template

static int validate_template (
    OBJ_TEMPLATE * temp
) 

Macro Definition Documentation

define OBJ_INTERNAL_SAVEPOINT_NAME

#define OBJ_INTERNAL_SAVEPOINT_NAME `"*template-unique*"`


The documentation for this class was generated from the following file cubrid/src/object/object_template.c