fix minor mistake in custom error screen (Jan Ivar Pladsen)
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Manual / Plugins.pod
index edcec20..16da1ef 100644 (file)
@@ -5,10 +5,13 @@ Catalyst::Manual::Plugins - Catalyst Plugins (and Components)
 =head1 DESCRIPTION
 
 This section lists the some of the plugins and components that are
-available to extend the runtime functionality of Catalyst. The plugins
+available to extend the runtime functionality of Catalyst. Most plugins
 are not distributed with Catalyst but should be available from CPAN.
 They typically require additional modules from CPAN.
 
+This list is almost certainly outdated by the time you read this, so be
+sure to check the Catalyst::Plugin namespace for additional plugins.
+
 =head1 PLUGINS
 
 =head2 Catalyst::Plugin::Authentication::CDBI
@@ -16,6 +19,40 @@ They typically require additional modules from CPAN.
 L<Catalyst::Plugin::Authentication::CDBI> is a CDBI (C<Class::DBI>)
 authentication plugin.  Note that it requires a session plugin.
 
+=head2 Catalyst::Plugin::Authentication::LDAP
+
+L<Catalyst::Plugin::Authentication::LDAP> is a plugin allowing you 
+to authenticate your web users using an LDAP server. 
+
+=head2 Catalyst::Plugin::Browser
+
+L<Catalyst::Plugin::Browser> extends L<Catalyst::Request> by adding the
+capability of browser detection. It returns an instance of
+L<HTTP::BrowserDetect>, which lets you get information from the client's
+user agent.
+
+=head2 Catalyst::Plugin::Cache::FastMmap, FileCache, and Memcached
+
+L<Catalyst::Plugin::Cache::FastMmap>,
+L<Catalyst::Plugin::Cache::FileCache>, and
+L<Catalyst::Plugin::Cache::Memcached> all provide a cache method
+enabling easy access to a shared cache.
+
+=head2 Catalyst::Plugin::Compress::Zlib
+
+L<Catalyst::Plugin::Compress::Zlib> supplies Zlib compression for
+Catalyst.
+
+=head2 Catalyst::Plugin::Compress::Bzip2
+
+L<Catalyst::Plugin::Compress::Bzip2> compresses a response using
+bzip compression.
+
+=head2 Catalyst::Plugin::DefaultEnd
+
+L<Catalyst::Plugin::DefaultEnd> creates a sane, standard end method for
+your application.
+
 =head2 Catalyst::Plugin::Email
 
 L<Catalyst::Plugin::Email> sends email with Catalyst and L<Email::Send>
@@ -34,9 +71,14 @@ values into the form tags.
 
 L<Catalyst::Plugin::FormValidator> is a form validator plugin that uses
 L<Data::FormValidator> to validate and set up form data from your
-request parameters.  It's a quite thin wrapper around that module, so
+request parameters. It's a quite thin wrapper around that module, so
 most of the relevant information can be found there.
 
+=head2 Catalyst::Plugin::Geography
+
+L<Catalyst::Plugin::Geography> allows you to retrieve various kinds
+of geographical information. You can retrieve the country or code from
+the current user, from a given IP address, or from a given hostname.
 
 =head2 Catalyst::Plugin::I18N
 
@@ -44,6 +86,23 @@ L<Catalyst::Plugin::I18N> is an internationalization plugin for
 Catalyst.  Supports C<mo>/C<po> files and Maketext classes under your
 application's I18N namespace.
 
+=head2 Catalyst::Plugin::Observe
+
+L<Catalyst::Plugin::Observe> provides the ability to register AOP-like
+callbacks to specific Engine events. Subclasses L<Class::Publisher>.
+
+=head2 Catalyst::Plugin::OrderedParams
+
+L<Catalyst::Plugin::OrderedParams> adjusts the way that parameters operate,
+causing them to appear in the same order they were submitted by the browser.
+This can be useful for creating things such as email forms.
+
+=head2 Catalyst::Plugin::PageCache
+
+L<Catalyst::Plugin::PageCache> helps improve the performance of slow or
+frequently accessed pages by caching the entire output of your page.
+Subsequent requests to the page will receive the page very quickly from
+cache.
 
 =head2 Catalyst::Plugin::Pluggable
 
@@ -56,24 +115,54 @@ L<Catalyst::Plugin::Prototype> is a plugin for the Prototype JavaScript
 library. This Plugin allows you to easily implement AJAX functionality
 without actually knowing Javascript.
 
+=head2 Catalyst::Plugin::RequireSSL
+
+Use L<Catalyst::Plugin::RequireSSL> if you would like to force visitors
+to access certain pages using only SSL mode. An attempt to access the
+page in non-SSL mode will receive a redirect into SSL mode. Useful for
+login pages, shopping carts, user registration forms, and other
+sensitive data.
+
+=head2 Catalyst::Plugin::Session
+
+The L<Catalyst::Plugin::Session> series of modules provide an easy way to
+include session handling in an application. You can choose from several
+different backend storage methods and combine that with your choice of
+client-side storage methods.
+
 =head2 Catalyst::Plugin::Session::FastMmap
 
 L<Catalyst::Plugin::Session::FastMmap> is a session plugin for Catalyst
 based on C<Cache::FastMMap>, which uses an mmap'ed file to act as a
-shared memory interprocess cache.
+shared memory interprocess cache. This is an older session plugin; you may
+wish to look at L<Catalyst::Plugin::Session> instead.
 
+=head2 Catalyst::Plugin::SRU
 
-=head2 Catalyst::Plugin::Static
+L<Catalyst::Plugin::SRU> allows your controller class to dispatch SRU
+actions (C<explain>, C<scan>, and C<searchRetrieve>) from its own class.
+
+=head2 Catalyst::Plugin::Static::Simple
+
+L<Catalyst::Plugin::Static::Simple> serves static files in your
+application without requiring a single line of code. This plugin is now
+included in the core Catalyst distribution.
 
-L<Catalyst::Plugin::Static> is a plugin to serve static files from C<<
-$c->config->{root} >>/<< action >>/.
+=head2 Catalyst::Plugin::Static
 
+L<Catalyst::Plugin::Static> is a plugin to serve static files from
+C<$c-E<gt>config-E<gt>{root}>. Intended chiefly for development
+purposes.
 
 =head2 Catalyst::Plugin::SubRequest
 
 L<Catalyst::Plugin::SubRequest> is a plugin to allow subrequests to
-actions to be made within Catalyst.  Nice for portal software and such.
+actions to be made within Catalyst. Nice for portal software and such.
+
+=head2 Catalyst::Plugin::SuperForm
 
+L<Catalyst::Plugin::SuperForm> is an interface to the L<HTML::SuperForm>
+module, enabling easy HTML form creation.
 
 =head2 Catalyst::Plugin::Textile
 
@@ -82,13 +171,17 @@ Catalyst that uses C<Text::Textile>, a Perl-based implementation of Dean
 Allen's Textile syntax. Textile is shorthand for doing common formatting
 tasks (see L<http://textism.com>).
 
+=head2 Catalyst::Plugin::Unicode
+
+L<Catalyst::Plugin::Unicode> provides a Unicode-aware Catalyst. On
+request, it decodes all params from UTF-8 octets into a sequence of
+logical characters. On response, it encodes the body into UTF-8 octets.
 
 =head2 Catalyst::Plugin::XMLRPC
 
 L<Catalyst::Plugin::XMLRPC> plugin allows your Controller class to
 dispatch XMLRPC methods from its own class.
 
-
 =head1 COMPONENT MODULES
 
 =head2 Catalyst::Model::CDBI
@@ -98,28 +191,64 @@ is built on top of C<Class::DBI::Loader>, which automates the
 definition of C<Class::DBI> sub-classes by scanning the underlying 
 table schemas, setting up columns and primary keys.
 
-=head2 Catalyst::Model::CDBI::CRUD
+=head2 Catalyst::Model::CDBI::Plain
 
-L<Catalyst::Model::CDBI::CRUD> is a subclass of 
-C<Catalyst::Model::CDBI> with additional CRUD (create, replace, 
-update, delete) methods.
+L<Catalyst::Model::CDBI::Plain> is a neutral interface to the
+C<Class::DBI> module, which does not attempt to automate table
+setup. It allows the user to manually set up C<Class::DBI>
+classes, either by doing so within the Catalyst model classes
+themselves, or by inheriting from existing C<Class::DBI>
+classes.
 
+=head2 Catalyst::Model::DBIC
 
-=head2 Catalyst::View::TT
+L<Catalyst::Model::DBIC> is a L<DBIx::Class> model class built on top of
+L<DBIx::Class::Loader>.
+
+=head2 Catalyst::Model::Plucene
+
+L<Catalyst::Model::Plucene> is a model class for the Plucene search
+engine.
+
+=head2 Catalyst::Model::Xapian
 
-L<Catalyst::View::TT> is a Template Toolkit view. See
-L<Template::Manual>.
+L<Catalyst::Model::Xapian> is a model class for the Xapian search
+engine.
+
+=head2 Catalyst::View::HTML::Template
+
+L<Catalyst::View::HTML::Template> is a View component for
+displaying your stash with L<HTML::Template>.
 
 =head2 Catalyst::View::Mason
 
-L<Catalyst::View::Mason> allows you to render your stash using
-L<HTML::Mason>.
+L<Catalyst::View::Mason> is a View component for displaying your stash
+with L<HTML::Mason>.
+
+=head2 Catalyst::View::PSP
 
-=head1 AUTHOR
+L<Catalyst::View::PSP> is a View component for displaying your stash
+using PSP, a Perl extension implementing a JSP-like templating system;
+see L<Text::PSP>.
+
+=head2 Catalyst::View::Petal
+
+L<Catalyst::View::Petal> is a View component for displaying 
+your stash using Petal, the Perl Template Attribute Language,
+an XML-based templating system; see L<Petal>.
+
+=head2 Catalyst::View::TT
+
+L<Catalyst::View::TT> is a Template Toolkit view. See L<Template::Manual>.
+
+=head1 AUTHORS
 
 Andrew Ford E<lt>A.Ford@ford-mason.co.ukE<gt>
+
 Marcus Ramberg E<lt>mramberg@cpan.orgE<gt>
 
+Jesse Sheidlower E<lt>jester@panix.comE<gt>
+
 =head1 COPYRIGHT
 
 This program is free software, you can redistribute it and/or modify it under