]> git.decadent.org.uk Git - maypole.git/commitdiff
some release preparation
authorSebastian Riedel <sri@labs.kraih.com>
Fri, 22 Oct 2004 17:24:47 +0000 (17:24 +0000)
committerSebastian Riedel <sri@labs.kraih.com>
Fri, 22 Oct 2004 17:24:47 +0000 (17:24 +0000)
git-svn-id: http://svn.maypole.perl.org/Maypole/trunk@257 48953598-375a-da11-a14b-00016c27c3ee

Changes
README
TODO

diff --git a/Changes b/Changes
index 4ce18b84a724e42b0520c30d1a55486d9acc5f5c..9ecca6437953d1722c8688450ebc2722d9d17cb9 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,6 +1,6 @@
 Revision history for Perl extension Maypole 
 
-2.0   XXX XXX XX XX:XX:XX XXX XXXX
+2.0   Fri Oct 22 20:00:00 2004
     - added parse_args() (Simon Flack)
     - call additional_data() and authenticate() for plain templates
     - merged Apache2::MVC (mod_perl2 support) into Apache::MVC
diff --git a/README b/README
index 136b43ca92ef40ee5efef423aeea70a6cf1eea36..91906c4c62ee42d76c4ac030eb5f9e7a2420c278 100644 (file)
--- a/README
+++ b/README
-Apache/MVC version 0.01
-=======================
+NAME
+    Maypole - MVC web application framework
 
-The README is used to introduce the module and provide instructions on
-how to install the module, any machine dependencies it may have (for
-example C compilers and installed libraries) and any other information
-that should be provided before the module is installed.
+SYNOPSIS
+    See Maypole::Application.
 
-A README file is required for CPAN modules since CPAN extracts the
-README file from a module distribution so that people browsing the
-archive can use it get an idea of the modules uses. It is usually a
-good idea to provide version information here so that people can
-decide whether fixes for the module are worth downloading.
+DESCRIPTION
+    This documents the Maypole request object. For user documentation, see
+    Maypole::Manual.
 
-INSTALLATION
+  CLASS METHODS
+   config
+    Returns the Maypole::Config object
 
-To install this module type the following:
+   setup
+        My::App->setup($data_source, $user, $password, \%attr);
 
-   perl Makefile.PL
-   make
-   make test
-   make install
+    Initialise the maypole application and model classes. Your application
+    should call this after setting configuration via "config"
 
-DEPENDENCIES
+   init
+    You should not call this directly, but you may wish to override this to
+    add application-specific initialisation.
 
-This module requires these other modules and libraries:
+   view_object
+    Get/set the Maypole::View object
 
-  blah blah blah
+   debug
+        sub My::App::debug {1}
 
-COPYRIGHT AND LICENCE
+    Returns the debugging flag. Override this in your application class to
+    enable/disable debugging.
 
-Put the correct copyright and licence information here.
+  INSTANCE METHODS
+   parse_location
+    Turns the backend request (e.g. Apache::MVC, Maypole, CGI) into a
+    Maypole request. It does this by setting the "path", and invoking
+    "parse_path" and "parse_args".
 
-Copyright (C) 2004 Simon Cozens
+    You should only need to define this method if you are writing a new
+    Maypole backend.
 
-This library is free software; you can redistribute it and/or modify
-it under the same terms as Perl itself. 
+   path
+    Returns the request path
+
+   parse_path
+    Parses the request path and sets the "args", "action" and "table"
+    properties
+
+   table
+    The table part of the Maypole request path
+
+   action
+    The action part of the Maypole request path
+
+   args
+    A list of remaining parts of the request path after table and action
+    have been removed
+
+   parse_args
+    Turns post data and query string paramaters into a hash of "params".
+
+    You should only need to define this method if you are writing a new
+    Maypole backend.
+
+   params
+    Returns a hash of request parameters. The source of the parameters may
+    vary depending on the Maypole backend, but they are usually populated
+    from request query string and POST data.
+
+    Note: Where muliple values of a parameter were supplied, the "params"
+    value will be an array reference.
+
+   get_template_root
+    Implimentation-specific path to template root.
+
+    You should only need to define this method if you are writing a new
+    Maypole backend. Otherwise, see "template_root" in Maypole::Config
+
+   get_request
+    You should only need to define this method if you are writing a new
+    Maypole backend. It should return something that looks like an Apache or
+    CGI request object, it defaults to blank.
+
+   is_applicable
+    Returns a Maypole::Constant to indicate whether the request is valid.
+
+    The default implimentation checks that "$r->table" is publicly
+    accessible and that the model class is configured to handle the
+    "$r->action"
+
+   authenticate
+    Returns a Maypole::Constant to indicate whether the user is
+    authenticated for the Maypole request.
+
+    The default implimentation returns "OK"
+
+   model_class
+    Returns the perl package name that will serve as the model for the
+    request. It corresponds to the request "table" attribute.
+
+   additional_data
+    Called before the model processes the request, this method gives you a
+    chance to do some processing for each request, for example, manipulating
+    "template_args".
+
+   objects
+    Get/set a list of model objects. The objects will be accessible in the
+    view templates.
+
+    If the first item in "$r->args" can be "retrieve()"d by the model class,
+    it will be removed from "args" and the retrieved object will be added to
+    the "objects" list. See Maypole::Model for more information.
+
+   template_args
+        $r->template_args->{foo} = 'bar';
+
+    Get/set a hash of template variables.
+
+   template
+    Get/set the template to be used by the view. By default, it returns
+    "$r->action"
+
+   exception
+    This method is called if any exceptions are raised during the
+    authentication or model/view processing. It should accept the exception
+    as a parameter and return a Maypole::Constant to indicate whether the
+    request should continue to be processed.
+
+   error
+    Get/set a request error
+
+   output
+    Get/set the response output. This is usually populated by the view
+    class. You can skip view processing by setting the "output".
+
+   document_encoding
+    Get/set the output encoding. Default: utf-8.
+
+   content_type
+    Get/set the output content type. Default: text/html
+
+   send_output
+    Sends the output and additional headers to the user.
+
+   call_authenticate
+    This method first checks if the relevant model class can authenticate
+    the user, or falls back to the default authenticate method of your
+    Maypole application.
+
+   call_exception
+    This model is called to catch exceptions, first after authenticate ,then
+    after processing the model class, and finally to check for exceptions
+    from the view class.
+
+    This method first checks if the relevant model class can handle
+    exceptions the user, or falls back to the default exception method of
+    your Maypole application.
+
+   handler
+    This method sets up the class if it's not done yet, sets some defaults
+    and leaves the dirty work to handler_guts.
+
+   handler_guts
+    This is the core of maypole. You don't want to know.
+
+SEE ALSO
+    There's more documentation, examples, and a wiki at the Maypole web
+    site:
+
+    http://maypole.perl.org/
+
+    Maypole::Application,Apache::MVC, CGI::Maypole.
+
+AUTHOR
+    Sebastian Riedel, c<sri@oook.de>
+
+AUTHOR EMERITUS
+    Simon Cozens, "simon@cpan.org"
+
+THANKS TO
+    Danijel Milicevic, Dave Slack, Jesse Sheidlower, Jody Belka, Marcus
+    Ramberg, Mickael Joanne, Simon Flack, Veljko Vidovic and all the others
+    who've helped.
+
+LICENSE
+    You may distribute this code under the same terms as Perl itself.
 
diff --git a/TODO b/TODO
index 79449b105339fb7f6173ebe2d1c2af60d2893a49..5587868b18368429a7c6e036dee5527229cfdaaa 100644 (file)
--- a/TODO
+++ b/TODO
@@ -3,7 +3,3 @@
 * Better documentation and more complex examples
 * Much more warnings
 * Multiple Models
-
---- Needed for 2.0 release
-* Fix templates
-* Maypole::Manual