Class ::xo::db::sql::acs_rel_type (public)
::xo::db::Class ::xo::db::sql::acs_rel_type
Defined in
- Testcases:
-
No testcase defined.
Source code:
namespace eval ::xo::db::sql {}
::nsf::object::alloc ::xo::db::Class ::xo::db::sql::acs_rel_type {set :__default_metaclass ::xotcl::Class
set :__default_superclass ::xotcl::Object
set :abstract_p f
set :auto_save false
set :name_method {}
set :object_type ::xo::db::sql::acs_rel_type
set :security_inherit_p t
set :sql_package_name acs_rel_type
set :supertype acs_object
set :with_table true}
::xo::db::sql::acs_rel_type proc role_pretty_plural {{-dbn {}} -role:required} {
foreach var [list ROLE] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select acs_rel_type__role_pretty_plural($_ROLE)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::acs_rel_type proc create_role {{-dbn {}} -role:required -pretty_name -pretty_plural} {
foreach var [list ROLE PRETTY_NAME PRETTY_PLURAL] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select acs_rel_type__create_role($_ROLE, $_PRETTY_NAME, $_PRETTY_PLURAL)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::acs_rel_type proc role_pretty_name {{-dbn {}} -role:required} {
foreach var [list ROLE] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select acs_rel_type__role_pretty_name($_ROLE)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::acs_rel_type proc create_type {{-dbn {}} -rel_type:required -pretty_name:required -pretty_plural:required {-supertype relationship} -table_name:required -id_column:required -package_name:required -object_type_one:required -role_one -min_n_rels_one:required -max_n_rels_one:required -object_type_two:required -role_two -min_n_rels_two:required -max_n_rels_two:required {-composable_p t}} {
foreach var [list REL_TYPE PRETTY_NAME PRETTY_PLURAL SUPERTYPE TABLE_NAME ID_COLUMN PACKAGE_NAME OBJECT_TYPE_ONE ROLE_ONE MIN_N_RELS_ONE MAX_N_RELS_ONE OBJECT_TYPE_TWO ROLE_TWO MIN_N_RELS_TWO MAX_N_RELS_TWO COMPOSABLE_P] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select acs_rel_type__create_type($_REL_TYPE, $_PRETTY_NAME, $_PRETTY_PLURAL, $_SUPERTYPE, $_TABLE_NAME, $_ID_COLUMN, $_PACKAGE_NAME, $_OBJECT_TYPE_ONE, $_ROLE_ONE, $_MIN_N_RELS_ONE, $_MAX_N_RELS_ONE, $_OBJECT_TYPE_TWO, $_ROLE_TWO, $_MIN_N_RELS_TWO, $_MAX_N_RELS_TWO, $_COMPOSABLE_P)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::acs_rel_type proc drop_role {{-dbn {}} -role:required} {
foreach var [list ROLE] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select acs_rel_type__drop_role($_ROLE)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
::xo::db::sql::acs_rel_type proc drop_type {{-dbn {}} -rel_type:required {-cascade_p f}} {
foreach var [list REL_TYPE CASCADE_P] {
set varname [string tolower $var]
if {[info exists $varname]} {
set $var [set $varname]
set _$var :$var
} else {
set _$var null
}
}
set sql "
select acs_rel_type__drop_type($_REL_TYPE, $_CASCADE_P)
"
db_with_handle -dbn $dbn db {
return [ ns_set value [ns_pg_bind 0or1row $db $sql] 0 ]
}
}
XQL Not present:Generic, PostgreSQL, Oracle
[
hide source ]
| [
make this the default ]