Index: openacs-4/packages/acs-core-docs/www/apm-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/apm-design.html,v diff -u -r1.21 -r1.22 --- openacs-4/packages/acs-core-docs/www/apm-design.html 11 Nov 2003 12:54:56 -0000 1.21 +++ openacs-4/packages/acs-core-docs/www/apm-design.html 19 Nov 2003 15:44:49 -0000 1.22 @@ -1,8 +1,7 @@ -
-by Bryan Quinn
+
By Bryan Quinn
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -Tcl API
Tcl API
apm-install-procs.tcl (Supports installation of packages)
20-apm-load-procs.tcl (Bootstraps APM for server startup)
OpenACS Applications: a "program or group of programs designed for end users" (the Webopedia definition); also known as modules, for historical reasons. -Examples of applications include Bboard and News. +Examples of applications include Forums and News.
OpenACS Services: the aforementioned building blocks. @@ -31,11 +30,11 @@ application and service instances that provide the end-user with capabilities and content customized to the particular subsite.
This architecture supports the growth of collaborative commerce. For example, Jane User starts a forum focusing on the merits of View Cameras by -creating an instance of the Bboard application for her personal subsite on an +creating an instance of the Forum application for her personal subsite on an OpenACS Installation. Jack User discovers Jane's forum and includes a link to it in his subsite. As interest in Jane's forum grows, she creates a subsite specializing in providing information about View cameras. This -subsite now includes several package instances beyond Bboard; it could +subsite now includes several package instances beyond Forum; it could potentially include its own Ecommerce capabilities (ala Yahoo! Shopping). This could include a knowledge management application that allows users to spread expertise about view cameras and a portal application that links to reliable camera models @@ -88,7 +87,7 @@ packages for other ACS users to download and install.
For a simple illustration of the difference between ACS without APM (pre-3.3) and ACS with APM (3.3 and beyond), consider a hypothetical ACS installation that uses only two of the thirty-odd modules available circa ACS -3.2 (say, bboard and e-commerce):
APM itself is part of a package, the OpenACS Kernel, an OpenACS +3.2 (say, bboard and e-commerce):
APM itself is part of a package, the OpenACS Kernel, an OpenACS service that is the only mandatory component of an OpenACS installation.
The OpenACS is a platform for web-based application software, and any software platform has the potential to develop problems like those described above. Fortunately, there are many precedents for systematic solutions, @@ -466,7 +465,7 @@
The central piece of the data model is the apm_package_types table where each package is registered. When a new application or service is installed on an OpenACS instance, a corresponding row in this table is inserted -with information about the type of package, e.g. if the bboard package is installed on your OpenACS server, a row +with information about the type of package, e.g. if the forum package is installed on your OpenACS server, a row in apm_package_types will be created, noting that it's an application package type.
The apm_packages table is used to contain information about the instances of packages currently created in the system. The