Mercurial > SimpleWebPresenter
changeset 80:88904282b888
Documentation fixes.
| author | Tom Fredrik Blenning Klaussen <bfg@blenning.no> |
|---|---|
| date | Fri, 12 Oct 2012 16:59:19 +0200 |
| parents | 9b490aa11124 |
| children | 2a8e2f571b24 3a1e20a5b67a |
| files | Page.inc |
| diffstat | 1 files changed, 50 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/Page.inc Fri Oct 12 16:47:25 2012 +0200 +++ b/Page.inc Fri Oct 12 16:59:19 2012 +0200 @@ -8,37 +8,85 @@ /// @endcond /** - * Functionality for generating a page + * Master class for generating a page */ class Page { private $cache; - function __construct($cache) + /** + * Constructs a page + * + * @param $cache optionally sets a cache + */ + function __construct($cache = null) { $this->setCache($cache); } + /** + * Set the cache + * + * @param $cache The cache object + */ protected function setCache($cache) { $this->cache = $cache; } + /** + * Get the cache + * + * @return The cache object + */ protected function getCache() { return $this->cache; } + /** + * Decide wether or not this page may be compressed. + * + * Normally this is a check for http headers, but some pages + * eg. pictures may not want to be compressed, and may override this + * function. + * + * @return bool if this page may be compressed + */ function mayCompress() { return (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')); } + /** + * Turns on compression for this page + * + * @note This may not be reversed + */ function startCompression() { ob_start("ob_gzhandler"); } + /** + * Generates the actual content of the page + * + * @return the content buffer + */ + abstract function generateContent(); + + /** + * Finishes all necessary processing to determine the cacheset of this page. + * + * @return bool if this page may be cached + */ + abstract function cacheCheck(); + + /** + * Generates an appropriate response to the request. + * + * Eg. 302 NOT CHANGED, error message or the actual content + */ function genPage() { if ($this->cacheCheck()) {
