The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Catalyst::Manual::Plugins - Catalyst Plugins (and Components)

DESCRIPTION

This section lists the some of the plugins and components that are 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 and some plugins may even be deprecated or now part of core Catalyst. Be sure to check the Catalyst::Plugin namespace for additional plugins and consult the mailing list ( http://dev.catalyst.perl.org/wiki/Support ) for advice on the current status or preferred use of your chosen plugin/framework.

PLUGINS

Catalyst::Plugin::Account::AutoDiscovery

Catalyst::Plugin::Account::AutoDiscovery provides Account Auto-Discovery for Catalyst.

Catalyst::Plugin::Acme::Scramble

Catalyst::Plugin::Acme::Scramble Implements a potent meme about how easily we can read scrambled text if the first and last letters remain constant. Operates on text/plain and text/html served by your Catalyst application.

Catalyst::Plugin::AtomPP

Catalyst::Plugin::AtomPP allows you to dispatch AtomPP methods.

Catalyst::Plugin::AtomServer

Catalyst::Plugin::AtomServer is a plugin that implements the necessary bits to make it easy to build an Atom API server for any Catalyst-based application.

Catalyst::Plugin::Authentication

Catalyst::Plugin::Authentication is a infrastructure plugin for the Catalyst authentication framework. Now the recommended way to do any form of Authentication.

Catalyst::Plugin::Authentication::Basic::Remote

Catalyst::Plugin::Authentication::Basic::Remote is a authentication plugin that allows you to use a remote host's Basic authentication.

Catalyst::Plugin::Authentication::CDBI

Catalyst::Plugin::Authentication::CDBI is a CDBI (Class::DBI) authentication plugin. Note that it requires a session plugin.

Catalyst::Plugin::Authentication::CDBI::Basic

Catalyst::Plugin::Authentication::CDBI::Basic provides Basic Authorization for Catalyst. Replaced by Catalyst::Plugin::Authentication::Credential::HTTP

Catalyst::Plugin::Authentication::Credential::Atom

Catalyst::Plugin::Authentication::Credential::Atom is a plugin which implements WSSE and Basic authentication for Catalyst applications using Catalyst::Plugin::AtomServer

Catalyst::Plugin::Authentication::Credential::Flickr

Catalyst::Plugin::Authentication::Credential::Flickr is a plugin which provides authentication via Flickr, using it's API

Catalyst::Plugin::Authentication::Credential::HTTP

Catalyst::Plugin::Authentication::Credential::HTTP is a plugin that lets you do HTTP Basic authentication for Catalyst.

Catalyst::Plugin::Authentication::Credential::Password

Catalyst::Plugin::Authentication::Credential::Password takes a username (or userid) and a password, and tries various methods of comparing a password based on what the chosen store's user objects support. Part of the Authentication Framework <Catalyst::Plugin::Authentication>

Catalyst::Plugin::Authentication::Credential::TypeKey

Catalyst::Plugin::Authentication::Credential::TypeKey integrates Authen::TypeKey with Catalyst::Plugin::Authentication

Catalyst::Plugin::Authentication::LDAP

Catalyst::Plugin::Authentication::LDAP is a plugin allowing you to authenticate your web users using an LDAP server. Replaced by Catalyst::Plugin::Authentication::Store::LDAP

Catalyst::Plugin::Authentication::OpenID

Catalyst::Plugin::Authentication::OpenID is a plugin that implements support for OpenID authentication. For more information on OpenID, take a look at http://www.openid.net/.

Catalyst::Plugin::Authentication::Simple

Replaced by new Catalyst::Plugin::Authentication framework

Catalyst::Plugin::Authentication::Store

Catalyst::Plugin::Authentication::Store is the core store documentation

Catalyst::Plugin::Authentication::Store::DBIC

Catalyst::Plugin::Authentication::Store::DBIC is a plugin that lets you do authentication and authorization against a DBIx::Class or Class::DBI model.

Catalyst::Plugin::Authentication::Store::Htpasswd

Catalyst::Plugin::Authentication::Store::Htpasswd uses Authen::Htpasswd to let your application use .htpasswd files for it's authentication storage.

Catalyst::Plugin::Authentication::Store::LDAP

Catalyst::Plugin::Authentication::Store::LDAP the new LDAP store. Use this instead of Catalyst::Plugin::Authentication::LDAP

Catalyst::Plugin::Authentication::Store::Minimal

Catalyst::Plugin::Authentication::Store::Minimal lets you create a very quick and dirty user database in your application's config hash. Great for getting up and running quickly.

Catalyst::Plugin::Authentication::User::Hash

Catalyst::Plugin::Authentication::User::Hash is an easy authentication user object based on hashes. See Catalyst::Plugin::Authentication::Store::Minimal for more info.

Catalyst::Plugin::Authorization::ACL

Catalyst::Plugin::Authorization::ACL This module provides Access Control List style path protection, with arbitrary rules for Catalyst applications. It operates only on the Catalyst private namespace, at least at the moment.

Catalyst::Plugin::Authorization::CDBI::GroupToken

No longer on the CPAN

Catalyst::Plugin::Authorization::Roles

Catalyst::Plugin::Authorization::Roles provides role based authorization for Catalyst based on Catalyst::Plugin::Authentication.

Catalyst::Plugin::Browser

Catalyst::Plugin::Browser extends Catalyst::Request by adding the capability of browser detection. It returns an instance of HTTP::BrowserDetect, which lets you get information from the client's user agent.

Catalyst::Plugin::Cache::FastMmap, FileCache, and Memcached

Catalyst::Plugin::Cache::FastMmap, Catalyst::Plugin::Cache::FileCache, and Catalyst::Plugin::Cache::Memcached all provide a cache method enabling easy access to a shared cache.

Catalyst::Plugin::CDBI::Transaction

Catalyst::Plugin::Charsets::Japanese

Catalyst::Plugin::Compress::Bzip2

Catalyst::Plugin::Compress::Bzip2 compresses a response using bzip compression.

Catalyst::Plugin::Compress::Deflate

Catalyst::Plugin::Compress::Gzip

Catalyst::Plugin::Compress::Zlib

Catalyst::Plugin::Compress::Zlib supplies Zlib compression for Catalyst.

Catalyst::Plugin::Config::JSON

Catalyst::Plugin::ConfigLoader

Catalyst::Plugin::ConfigLoader::INI

Catalyst::Plugin::ConfigLoader::JSON

Catalyst::Plugin::ConfigLoader::Perl

Catalyst::Plugin::ConfigLoader::XML

Catalyst::Plugin::ConfigLoader::YAML

Catalyst::Plugin::Config::YAML

Catalyst::Plugin::DateTime

Catalyst::Plugin::DefaultEnd

Catalyst::Plugin::DefaultEnd creates a sane, standard end method for your application.

Catalyst::Plugin::Devel::InPageLogs

Catalyst::Plugin::Devel::InPageLogs::Log

Catalyst::Plugin::Dumper

Catalyst::Plugin::Email

Catalyst::Plugin::Email sends email with Catalyst and Email::Send and Email::MIME::Creator.

Catalyst::Plugin::Email::Japanese

Catalyst::Plugin::Email::Page

Catalyst::Plugin::EmailValid

Catalyst::Plugin::FillInForm

Catalyst::Plugin::FillInForm is plugin for Catalyst based on HTML::FillInForm, which describes itself as a module to automatically insert data from a previous HTML form into the HTML input, textarea, radio buttons, checkboxes, and select tags. HTML::FillInForm is a subclass of HTML::Parser and uses it to parse the HTML and insert the values into the form tags.

Catalyst::Plugin::Flavour

Catalyst::Plugin::FormValidator

Catalyst::Plugin::FormValidator is a form validator plugin that uses Data::FormValidator to validate and set up form data from your request parameters. It's a quite thin wrapper around that module, so most of the relevant information can be found there.

Catalyst::Plugin::FormValidator::Simple

Catalyst::Plugin::Geography

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.

Catalyst::Plugin::Geography::Implementation

Catalyst::Plugin::HashedCookies

Catalyst::Plugin::HTML::Scrubber

Catalyst::Plugin::HTML::Widget

Catalyst::Plugin::I18N

Catalyst::Plugin::I18N is an internationalization plugin for Catalyst. Supports mo/po files and Maketext classes under your application's I18N namespace.

Catalyst::Plugin::JSONRPC

Catalyst::Plugin::Message

Catalyst::Plugin::MobileAgent

Catalyst::Plugin::Observe

Catalyst::Plugin::Observe provides the ability to register AOP-like callbacks to specific Engine events. Subclasses Class::Publisher.

Catalyst::Plugin::OrderedParams

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.

Catalyst::Plugin::PageCache

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.

Catalyst::Plugin::Params::Nested

Catalyst::Plugin::Params::Nested::Expander

Catalyst::Plugin::Pluggable

Catalyst::Plugin::Pluggable is a plugin for pluggable Catalyst applications.

Catalyst::Plugin::Prototype

Catalyst::Plugin::Prototype is a plugin for the Prototype JavaScript library. This Plugin allows you to easily implement AJAX functionality without actually knowing Javascript.

Catalyst::Plugin::Redirect

Catalyst::Plugin::RequestToken

Catalyst::Plugin::RequireSSL

Use 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.

Catalyst::Plugin::SanitizeUrl

Catalyst::Plugin::SanitizeUrl::PrepAction

Catalyst::Plugin::Scheduler

Catalyst::Plugin::Session

The 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.

Catalyst::Plugin::Session::CGISession

Catalyst::Plugin::Session::FastMmap

Catalyst::Plugin::Session::FastMmap is a session plugin for Catalyst based on Cache::FastMMap, which uses an mmap'ed file to act as a shared memory interprocess cache. This is an older session plugin; you may wish to look at Catalyst::Plugin::Session instead.

Catalyst::Plugin::Session::Flex

Catalyst::Plugin::Session::Manager

Catalyst::Plugin::Session::Manager::Client::Cookie

Catalyst::Plugin::Session::Manager::Client::Rewrite

Catalyst::Plugin::Session::Manager::Client::StickyQuery

Catalyst::Plugin::Session::Manager::Storage::CDBI

Catalyst::Plugin::Session::Manager::Storage::FastMmap

Catalyst::Plugin::Session::Manager::Storage::File

Catalyst::Plugin::Session::PerUser

Catalyst::Plugin::Session::State

Catalyst::Plugin::Session::State::Cookie

Catalyst::Plugin::Session::State::URI

Catalyst::Plugin::Session::Store

Catalyst::Plugin::Session::Store::CDBI

Catalyst::Plugin::Session::Store::DBI

Catalyst::Plugin::Session::Store::Dummy

Catalyst::Plugin::Session::Store::FastMmap

Catalyst::Plugin::Session::Store::File

Catalyst::Plugin::Session::Store::Memcached

Catalyst::Plugin::Session::Test::Store

Catalyst::Plugin::Singleton

Catalyst::Plugin::SRU

Catalyst::Plugin::SRU allows your controller class to dispatch SRU actions (explain, scan, and searchRetrieve) from its own class.

Catalyst::Plugin::StackTrace

Catalyst::Plugin::Static

Catalyst::Plugin::Static is a plugin to serve static files from $c->config->{root}. Intended chiefly for development purposes.

Catalyst::Plugin::Static::Simple

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.

Catalyst::Plugin::SubRequest

Catalyst::Plugin::SubRequest is a plugin to allow subrequests to actions to be made within Catalyst. Nice for portal software and such.

Catalyst::Plugin::SuperForm

Catalyst::Plugin::SuperForm is an interface to the HTML::SuperForm module, enabling easy HTML form creation.

Catalyst::Plugin::Textile

Catalyst::Plugin::Textile is a persistent Textile processor for Catalyst that uses Text::Textile, a Perl-based implementation of Dean Allen's Textile syntax. Textile is shorthand for doing common formatting tasks (see http://textism.com).

Catalyst::Plugin::Unicode

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.

Catalyst::Plugin::Unicode::Encoding

Catalyst::Plugin::Upload::Basename

Catalyst::Plugin::Upload::MD5

Catalyst::Plugin::Upload::MIME

Catalyst::Plugin::XMLRPC

Catalyst::Plugin::XMLRPC plugin allows your Controller class to dispatch XMLRPC methods from its own class.

COMPONENT MODULES

Catalyst::Model::CDBI

Catalyst::Model::CDBI is the Class::DBI (CDBI) module class. It is built on top of Class::DBI::Loader, which automates the definition of Class::DBI sub-classes by scanning the underlying table schemas, setting up columns and primary keys.

Catalyst::Model::CDBI::Plain

Catalyst::Model::CDBI::Plain is a neutral interface to the Class::DBI module, which does not attempt to automate table setup. It allows the user to manually set up Class::DBI classes, either by doing so within the Catalyst model classes themselves, or by inheriting from existing Class::DBI classes.

Catalyst::Model::DBIC::Schema

Catalyst::Model::DBIC::Schema is a DBIx::Class model class that can use either an explicit DBIx::Class::Schema or one automatically loaded from your database via DBIx::Class::Schema::Loader

Catalyst::Model::Plucene

Catalyst::Model::Plucene is a model class for the Plucene search engine.

Catalyst::Model::Xapian

Catalyst::Model::Xapian is a model class for the Xapian search engine.

Catalyst::View::HTML::Template

Catalyst::View::HTML::Template is a View component for displaying your stash with HTML::Template.

Catalyst::View::Mason

Catalyst::View::Mason is a View component for displaying your stash with HTML::Mason.

Catalyst::View::PSP

Catalyst::View::PSP is a View component for displaying your stash using PSP, a Perl extension implementing a JSP-like templating system; see Text::PSP.

Catalyst::View::Petal

Catalyst::View::Petal is a View component for displaying your stash using Petal, the Perl Template Attribute Language, an XML-based templating system; see Petal.

Catalyst::View::TT

Catalyst::View::TT is a Template Toolkit view. See Template::Manual.

AUTHORS

Andrew Ford <A.Ford@ford-mason.co.uk>

Gavin Henry <ghenry@suretecsystems.com>

Jesse Sheidlower <jester@panix.com>

Marcus Ramberg <mramberg@cpan.org>

COPYRIGHT

This program is free software, you can redistribute it and/or modify it under the same terms as Perl itself.