Class Relations
- class: ::nx::EnsembleObject
![[i]](/resources/acs-subsite/ZoomIn16.gif)
::nx::EnsembleObject create ::acs::db::nsdb-postgresql::slot::__call::acs_permission
Methods (to be applied on the object)
grant_permission (scripted)
db_with_handle -dbn $dbn __DB {
set s [ns_pg_bind 0or1row $__DB {select acs_permission__grant_permission(CAST(:object_id AS integer),CAST(:grantee_id AS integer),:privilege)}]
return [ns_set value $s 0]
}permission_p (scripted)
db_with_handle -dbn $dbn __DB {
set s [ns_pg_bind 0or1row $__DB {select acs_permission__permission_p(CAST(:object_id AS integer),CAST(:party_id AS integer),:privilege)}]
return [ns_set value $s 0]
}permission_p_recursive_array (scripted)
set result {}; set start_time [expr {[clock clicks -microseconds]/1000.0}]
db_with_handle -dbn $dbn __DB {
set s [ns_pg_bind select $__DB {select r.* from acs_permission__permission_p_recursive_array(:objects,CAST(:party_id AS integer),:privilege) as r}]
while {[ns_db getrow $__DB $s]} {lappend result [ns_set values $s]}
}
ds_collect_db_call $dbn call "" "acs_permission__permission_p_recursive_array(:objects,CAST(:party_id AS integer),:privilege)" $start_time 0 ""
ns_set free $s
return $resultrevoke_permission (scripted)
db_with_handle -dbn $dbn __DB {
set s [ns_pg_bind 0or1row $__DB {select acs_permission__revoke_permission(CAST(:object_id AS integer),CAST(:grantee_id AS integer),:privilege)}]
return [ns_set value $s 0]
}