Skip To Main Content
Begin Main Content
Methods: Source: Variables:
[All Methods | Documented Methods | Hide Methods] [Display Source | Hide Source] [Show Variables | Hide Variables]

::xotcl::Class[i] ::xo::db::CrCache

Class Hierarchy of ::xo::db::CrCache

  • ::xotcl::Object[i]
    Meta-class:
    ::xotcl::Class[i]
    Methods for instances:
    __api_make_doc, __api_make_forward_doc, __nextC, __timediff, abstract, ad_doc, ad_forward, ad_proc, appendC, arrayC, asHTML, autonameC, checkC, classC, cleanupC, configureC, contains, copy, db_1rowC, debug, defaultmethod, destroyC, destroy_on_cleanup, evalC, existsC, extractConfigureArg, filterC, filterguardC, filtersearchC, forwardC, hasclass, incrC, infoC, init, instvarC, invarC, isclassC, ismetaclassC, ismixinC, isobjectC, istypeC, lappendC, log, method, mixinC, mixinguardC, move, msg, noinitC, parametercmdC, procC, procsearchC, qn, requireNamespaceC, self, serialize, setC, substC, traceC, unsetC, uplevelC, upvarC, volatileC, vwaitC
    Methods to be applied on the class (in addition to the methods provided by the meta-class):
    __exitHandler, getExitHandler, setExitHandler, unsetExitHandler
    • ::xo::db::CrCache[i]
      Meta-class:
      ::xotcl::Class[i]
      Methods for instances:
      delete, fetch_object
      Methods to be applied on the class:
      Methods provided by the meta-class

Class Relations

  • superclass: ::xotcl::Object[i]
::xotcl::Class create ::xo::db::CrCache \
     -superclass ::xotcl::Object

Methods

  • instproc delete

    ::xo::db::CrCache instproc delete -item_id {
        next
        ::xo::clusterwide ns_cache flush xotcl_object_cache ::$item_id
        # we should probably flush as well cached revisions
      }
  • instproc fetch_object

    ::xo::db::CrCache instproc fetch_object {-item_id:required {-revision_id 0} -object:required} {
        set code [ns_cache eval xotcl_object_cache $object {
          set created 1
          #my log "--CACHE new new [self]"
          set o [next]
          return [::Serializer deepSerialize $o]
        }]
        #my log "--CACHE: [self args], created [info exists created] o [info exists o]"
        if {![info exists created]} {
          if {[my isobject $object]} {
            my log "--!! $object exists already"
          } else {
            set o [eval $code]
    	$object initialize_loaded_object
          }
        }
        return $object
      }

Methods: Source: Variables:
[All Methods | Documented Methods | Hide Methods] [Display Source | Hide Source] [Show Variables | Hide Variables]
My Calendar