An action is a configuration directive that maps a URL to
a handler. You setup actions within a package in the
action.perl file, and default actions are defined
in the server.perl file.
base installation
An OpenInteract base installation is where all versions of
all installed packages live. When you create a website or apply
a package, the original source for the package lives in the base
installation. One base installation can support many separate
websites, and you should only ever need to create the base
installation once.
handler
A handler is a piece of Perl code that ultimately returns
a fragment of HTML, or more generally, text. The handler
manages action security and manipulates objects (fetches,
creates, saves, removes) and hands the data to the template
for display.
package
Unit of distribution for a given functionality. This
includes all of the necessary configuration, templates, Perl
code, etc. You can install, upgrade and remove packages to or
from your website. You configure a package using the
action.perl and spops.perl files.
server
An Apache/mod_perl process that runs the code making up
one or more websites. You configure the server using
httpd.conf and httpd_modperl.conf files.
stash class
A stash class is Perl code that holds objects and other
information for a website from request to request. Every
website has its own stash class. (Not to be confused with Perl
package symbol tables.)
template
A template is a piece of text that contains template
processing directives interspersed with other text. Normally
in OpenInteract, this will be Template Toolkit processing
directives interspersed with HTML.
tool
Loosely speaking, a package implements a tool. This is not
exactly true, since a package can choose to implement more
than one tool. In general, you will find that there is a
one-to-one mapping between a package and a tool. A tool
consists of a set of templates that manipulate a common set of
objects.
website
An instantiation of the base OpenInteract framework plus a
set of user-defined packages. You configure the website using
the server.perl file.