Index: openacs-4/packages/xotcl-core/tcl/context-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xotcl-core/tcl/context-procs.tcl,v diff -u -r1.40 -r1.41 --- openacs-4/packages/xotcl-core/tcl/context-procs.tcl 24 Sep 2008 12:58:44 -0000 1.40 +++ openacs-4/packages/xotcl-core/tcl/context-procs.tcl 27 Sep 2008 17:18:39 -0000 1.41 @@ -298,9 +298,21 @@ ConnectionContext instproc cache {cmd} { set key cache($cmd) - if {![my exists $key]} {my set $key [uplevel $cmd]} + if {![my exists $key]} {my set $key [my uplevel $cmd]} return [my set $key] } + ConnectionContext instproc cache_exists {cmd} { + return [my exists cache($cmd)] + } + ConnectionContext instproc cache_get {cmd} { + return [my set cache($cmd)] + } + ConnectionContext instproc cache_set {cmd value} { + return [my set cache($cmd) $value] + } + ConnectionContext instproc cache_unset {cmd} { + return [my unset cache($cmd)] + } ConnectionContext instproc role=all {-user_id:required -package_id} { return 1 @@ -426,6 +438,8 @@ } ConnectionContext instproc set_parameter {name value} { + set key [list get_parameter $name] + if {[my cache_exists $key]} {my cache_delete $key} my set perconnectionparam($name) $value } ConnectionContext instproc get_parameter {name {default ""}} {