View · Index

Package Specific Code and Per Request Hooks

In the file myapp-procs.tcl it is possible as usual to define the application specific classes, the own includelets, etc. Furthermore, it is possible to alter the standard behavior of xowiki on a per-request basis.

Whenever an package instance of the application type myapp is initialized (e.g. in a request), the initialize method of ::myapp::Package is called.

namepsace eval ::myapp {
  ...
  ::myapp::Package instproc initialize {} {
    # Per application type initialization.

    #

    # One can register here e.g. mixins extending/replacing

    # xowiki behavior. For example

    #     ::xowiki::Page instmixin add ::myapp::Page

    #

    next
  }
  ::myapp::Package instproc destroy {} {
    # remove the behavior added by initialize

    #     ::xowiki::Page instmixin delete ::myapp::Page

    next
  }
  ...
}