1Catalyst::Manual::CompoUnseenrtsC(o3n)tributed Perl DocuCmaetnatlaytsito:n:Manual::Components(3)
2
3
4
6 Catalyst::Manual::Components - Reuseable components for Catalyst
7 applications
8
10 This section lists the some of the components (and plugins) that are
11 available to extend the runtime functionality of Catalyst. Most
12 components are not distributed with Catalyst but should be available
13 from CPAN. They typically require additional modules from CPAN.
14
15 This list may well be outdated by the time you read this, and some
16 plugins may be deprecated, or, conversely, may now part of core
17 Catalyst. Be sure to check the Catalyst:: and CatalystX:: namespaces
18 for additional components, and consult the mailing list (
19 <http://dev.catalyst.perl.org/wiki/Support> ) for advice on the current
20 status or preferred use of your chosen plugin/framework.
21
23 Catalyst::Plugin::Account::AutoDiscovery
24 Provides Account Auto-Discovery for Catalyst.
25
26 Catalyst::Plugin::Acme::Scramble
27 Implements a potent meme about how easily we can read scrambled text if
28 the first and last letters remain constant. Operates on text/plain and
29 text/html served by your Catalyst application.
30
31 Catalyst::Plugin::Alarm
32 Catalyst::Plugin::AtomPP
33 Allows you to dispatch AtomPP methods.
34
35 Catalyst::Plugin::AtomServer
36 A plugin that implements the necessary bits to make it easy to build an
37 Atom API server for any Catalyst-based application.
38
39 Catalyst::Plugin::Authentication
40 An infrastructure plugin for the Catalyst authentication framework. Now
41 the recommended way to do any form of Authentication.
42
43 Note that newer versions of the authentication plugin allow multiple
44 "realms", so that you can authenticate users in different ways in
45 different parts of your application.
46
47 This, however, has involved deprecated all classes in the
48 "Catalyst::Plugin::Authentication::Credential::XXX" and
49 "Catalyst::Plugin::Authentication::Store::XXX" namespaces.
50
51 These plugins are still usable, but they have mostly been replaced with
52 new modules in the new namespace which will work together.
53
54 Available Credential modules:
55
56 Catalyst::Authentication::Credential::AuthTkt
57
58 Allows you to use the Apache::AuthTkt module with Catalyst.
59
60 Catalyst::Authentication::Credential::FBConnect
61
62 Allows you to authenticate Facebook users using the FBConnect API.
63
64 Catalyst::Authentication::Credential::Flickr
65
66 Provides authentication via Flickr, using its API.
67
68 Catalyst::Authentication::Credential::HTTP
69
70 Allows you to authenticate users using HTTP Basic or Digest
71 authentication.
72
73 Catalyst::Authentication::Credential::HTTP::Proxy
74
75 Allows you to authenticate users against a remote web server offering
76 HTTP authentication.
77
78 Catalyst::Authentication::Credential::Kerberos
79
80 Allows you to authenticate your users against a Kerberos server.
81
82 Catalyst::Authentication::Credential::OAuth
83
84 Allows you to authenticate users using their login on other websites
85 supporting the OAuth protocol.
86
87 Catalyst::Authentication::Credential::OpenID
88
89 Allows you to authenticate users using their login on other websites
90 supporting the OpenID protocol.
91
92 Catalyst::Authentication::Credential::Password
93
94 Takes a username (or userid) and a password, and tries various methods
95 of comparing a password based on what the chosen store's user objects
96 support. Part of the Authentication Framework
97 Catalyst::Plugin::Authentication.
98
99 Catalyst::Authentication::Credential::RPX
100
101 Allows you to authenticate users using the RPX protocol.
102
103 Catalyst::Authentication::Credential::Remote
104
105 Allows you to authenticate users in Catalyst that have already been
106 authenticated by your web server. This is useful for authenticating
107 users with SSL Client certificates, and using NTLM or any other
108 authentication protocol natively supported by your web server.
109
110 Catalyst::Authentication::Credential::Testing
111
112 Allows you to set the same password for all users, which is useful when
113 you want to test logging in as multiple users or multiple types of
114 user, without having to mock things, or set all users' passwords in
115 your test suite.
116
117 Catalyst::Authentication::Credential::Authen::Simple
118
119 Allows any of the Authen::Simple family of modules to be used to
120 authenticate users in Catalyst.
121
122 Available Store modules:
123
124 Catalyst::Authentication::Store::DBIx::Class
125
126 Does authentication and authorization against a DBIx::Class model.
127
128 Catalyst::Authentication::Store::Htpasswd
129
130 Uses Authen::Htpasswd to let your application use ".htpasswd" files for
131 its authentication storage.
132
133 Catalyst::Authentication::Store::AuthTkt
134
135 This module implements the Catalyst::Authentication API for
136 Apache::AuthTkt.
137
138 Catalyst::Authentication::Store::DBI
139
140 Allows you to use a plain DBI database connection to identify users.
141
142 Catalyst::Authentication::Store::Htpasswd
143
144 Allows you to use an Apache htpasswd type file to authenticate users.
145
146 Catalyst::Authentication::Store::KiokuDB
147
148 Authenticate users stored as objects in the KiokuDB object graph
149 storage engine system.
150
151 Catalyst::Authentication::Store::LDAP
152
153 Authenticates users using an LDAP server.
154
155 Catalyst::Authentication::Store::Minimal
156
157 Lets you create a very quick and dirty user database in your
158 application's config hash. Great for getting up and running quickly.
159
160 Catalyst::Authentication::Store::Null
161
162 The Null store is a transparent store where any supplied user data is
163 accepted. This is mainly useful for remotely authenticating
164 credentials (e.g. OpenID) which may not be tied to any local storage.
165
166 Catalyst::Authentication::Store::RDBO
167
168 Allows access to authentication information stored in a database via a
169 Rose::DB::Object class.
170
171 Catalyst::Authentication::Store::Tangram
172
173 Allows access to authentication information stored in a database via a
174 Tangram class.
175
176 Catalyst::Authentication::Store::DBIx::Class
177
178 Allows access to authentication information stored in a database via a
179 DBIx::Class class.
180
181 Catalyst::Authentication::Store::Jifty::DBI
182
183 Allows access to authentication information stored in a database via a
184 Jifty::DBI class.
185
186 Catalyst::Authentication::User::Hash
187
188 An easy authentication user object based on hashes. See
189 Catalyst::Authentication::Store::Minimal for more info.
190
191 Catalyst::Plugin::Authorization::ACL
192 This module provides Access Control List style path protection, with
193 arbitrary rules for Catalyst applications. It operates only on the
194 Catalyst private namespace, at least at the moment.
195
196 Catalyst::Plugin::Authorization::Roles
197 Catalyst::Plugin::Authorization::Roles provides role-based
198 authorization for Catalyst based on Catalyst::Plugin::Authentication.
199
200 Catalyst::Plugin::AutoSession
201 Catalyst::Plugin::AutoSession enables specified request parameters to
202 generate session variables.
203
204 Catalyst::Plugin::Browser
205 Extends Catalyst::Request by adding the capability of browser
206 detection. It returns an instance of HTTP::BrowserDetect, which lets
207 you get information from the client's user agent.
208
209 Catalyst::Plugin::Cache
210 Provides a cache method enabling easy access to a shared cache
211 implementing the "Cache::" APO, such as:
212
213 FastMmap
214 FileCache
215 BerkeleyDB
216 Memcached
217 CHI
218
219 Catalyst::Plugin::CGI::Untaint
220 Provides specific charset handlers for the Japanese charsets.
221
222 Catalyst::Plugin::Charsets::Japanese
223 Catalyst::Plugin::Compress::Bzip2
224 Catalyst::Plugin::Compress::Deflate
225 Catalyst::Plugin::Compress::Gzip
226 Catalyst::Plugin::Compress::Zlib
227 Catalyst::Plugin::ConfigLoader
228 Provides a standard method for loading config files. Support exists for
229 various formats. See Catalyst::Plugin::ConfigLoader::General
230 Catalyst::Plugin::ConfigLoader::INI,
231 Catalyst::Plugin::ConfigLoader::JSON,
232 Catalyst::Plugin::ConfigLoader::Perl,
233 Catalyst::Plugin::ConfigLoader::XML, and
234 Catalyst::Plugin::ConfigLoader::YAML
235
236 Catalyst::Plugin::ConfigurablePathTo
237 Catalyst::Plugin::Devel::InPageLogs
238 Catalyst::Plugin::Devel::InPageLogs::Log
239 Catalyst::Plugin::Dojo
240 Catalyst::Plugin::Dumper
241 Catalyst::Plugin::Email
242 Sends email with Email::Send and Email::MIME::Creator.
243
244 Catalyst::Plugin::Email::Japanese
245 Catalyst::Plugin::Email::Page
246 Catalyst::Plugin::EmailValid
247 Catalyst::Plugin::FillInForm
248 A plugin based on "HTML::FillInForm", which describes itself as a
249 module to automatically insert data from a previous HTML form into the
250 HTML input, textarea, radio buttons, checkboxes, and select tags.
251 "HTML::FillInForm" is a subclass of "HTML::Parser" and uses it to parse
252 the HTML and insert the values into the form tags.
253
254 Catalyst::Plugin::Flavour
255 Catalyst::Plugin::Geography
256 Allows you to retrieve various kinds of geographical information. You
257 can retrieve the country or code from the current user, from a given IP
258 address, or from a given hostname.
259
260 Catalyst::Plugin::Geography::Implementation
261 Catalyst::Plugin::HashedCookies
262 Catalyst::Plugin::HTML::Scrubber
263 Catalyst::Plugin::I18N
264 An internationalization plugin for Catalyst. Supports "mo"/"po" files
265 and Maketext classes under your application's I18N namespace.
266
267 Catalyst::Plugin::JSONRPC
268 Catalyst::Plugin::Message
269 Catalyst::Plugin::MobileAgent
270 Catalyst::Plugin::Observe
271 Provides the ability to register AOP-like callbacks to specific Engine
272 events. Subclasses Class::Publisher.
273
274 Catalyst::Plugin::OrderedParams
275 Adjusts the way that parameters operate, causing them to appear in the
276 same order they were submitted by the browser. This can be useful for
277 creating things such as email forms.
278
279 Catalyst::Plugin::PageCache
280 Helps improve the performance of slow or frequently accessed pages by
281 caching the entire output of your page. Subsequent requests to the page
282 will receive the page very quickly from cache.
283
284 Catalyst::Plugin::Params::Nested
285 Catalyst::Plugin::Params::Nested::Expander
286 Catalyst::Plugin::Pluggable
287 A plugin for pluggable Catalyst applications.
288
289 Catalyst::Plugin::Prototype
290 A plugin for the Prototype JavaScript library. This plugin allows you
291 to easily implement AJAX functionality without actually knowing
292 Javascript.
293
294 Catalyst::Plugin::Redirect
295 Allows for easy redirecting with the Catalyst app.
296
297 Catalyst::Plugin::RequestToken
298 Catalyst::Plugin::RequireSSL
299 Use this if you would like to force visitors to access certain pages
300 using only SSL mode. An attempt to access the page in non-SSL mode will
301 receive a redirect into SSL mode. Useful for login pages, shopping
302 carts, user registration forms, and other sensitive data.
303
304 Catalyst::Plugin::Scheduler
305 Catalyst::Plugin::Session
306 The Catalyst::Plugin::Session series of modules provide an easy way to
307 include session handling in an application. You can choose from several
308 different backend storage methods and combine that with your choice of
309 client-side storage methods.
310
311 Catalyst::Plugin::Session::PerUser
312 Catalyst::Plugin::Session::State
313 Catalyst::Plugin::Session::State::Cookie
314 Catalyst::Plugin::Session::State::URI
315 Catalyst::Plugin::Session::Store
316 Catalyst::Plugin::Session::Store::CDBI
317 Catalyst::Plugin::Session::Store::DBI
318 Catalyst::Plugin::Session::Store::DBIC
319 Catalyst::Plugin::Session::Store::Dummy
320 Catalyst::Plugin::Session::Store::FastMmap
321 Catalyst::Plugin::Session::Store::File
322 Catalyst::Plugin::Session::Store::Memcached
323 Catalyst::Plugin::Session::Test::Store
324 Catalyst::Plugin::Singleton
325 Catalyst::Plugin::Snippets
326 Catalyst::Plugin::SRU
327 Allows your controller class to dispatch SRU actions ("explain",
328 "scan", and "searchRetrieve") from its own class.
329
330 Catalyst::Plugin::StackTrace
331 Catalyst::Plugin::Static
332 Catalyst::Plugin::Static is a plugin to serve static files from
333 "$c->config(root => 'foo')". Intended chiefly for development purposes.
334
335 Catalyst::Plugin::Static::Simple
336 Serves static files in your application without requiring a single line
337 of code.
338
339 Catalyst::Plugin::SubRequest
340 A plugin to allow subrequests to actions to be made within Catalyst.
341 Nice for portal software and such.
342
343 Catalyst::Plugin::SuperForm
344 An interface to the HTML::SuperForm module, enabling easy HTML form
345 creation.
346
347 Catalyst::Plugin::Unicode::Encoding
348 Provides a Unicode-aware Catalyst. On request, it decodes all params
349 from UTF-8 octets into a sequence of logical characters. On response,
350 it encodes the body into UTF-8 octets.
351
352 Catalyst::Plugin::Unicode
353 Disrecommended plugin which tries to autodetect the uft8ness of the
354 output and do the correct thing. This may work in some cases, but if it
355 helps, you've already painted yourself into a corner - try to avoid!
356
357 Catalyst::Plugin::Upload::Basename
358 Catalyst::Plugin::Upload::MD5
359 Computes the MD5 message digest of uploaded files.
360
361 Catalyst::Plugin::Upload::MIME
362 Catalyst::Plugin::UploadProgress
363 Catalyst::Plugin::XMLRPC
364 Allows your Controller class to dispatch XMLRPC methods from its own
365 class.
366
368 Catalyst::Controller::HTML::FormFu
369 Catalyst integration for <HTML::FormFu>.
370
372 Catalyst::Model::CDBI
373 The "Class::DBI" (CDBI) model class. It is built on top of
374 "Class::DBI::Loader", which automates the definition of "Class::DBI"
375 sub-classes by scanning the underlying table schemas, setting up
376 columns and primary keys.
377
378 Catalyst::Model::CDBI::Plain
379 A neutral interface to the "Class::DBI" module which does not attempt
380 to automate table setup. It allows the user to manually set up
381 "Class::DBI" classes, either by doing so within the Catalyst model
382 classes themselves, or by inheriting from existing "Class::DBI"
383 classes.
384
385 Catalyst::Model::DBIC::Schema
386 A DBIx::Class model class that can use either an explicit
387 DBIx::Class::Schema or one automatically loaded from your database via
388 DBIx::Class::Schema::Loader.
389
390 Catalyst::Model::EVDB
391 Catalyst::Model::File
392 Catalyst::Model::Gedcom
393 Catalyst::Model::LDAP
394 Catalyst::Model::NetBlogger
395 Catalyst::Model::Plucene
396 A model class for the Plucene search engine.
397
398 Catalyst::Model::Proxy
399 Catalyst::Model::SVN
400 Catalyst::Model::Xapian
401 A model class for the Xapian search engine.
402
404 Catalyst::View::Atom::XML
405 Catalyst::View::Chart::Strip
406 Catalyst::View::CSS::Squish
407 Catalyst::View::Embperl
408 Catalyst::View::GD::Barcode
409 Catalyst::View::GraphViz
410 Catalyst::View::HTML::Template
411 A view component for rendering pages with HTML::Template.
412
413 Catalyst::View::Jemplate
414 Catalyst::View::JSON
415 Catalyst::View::Mason
416 A view component for rendering pages with HTML::Mason.
417
418 Catalyst::View::MicroMason
419 Catalyst::View::PHP
420 Catalyst::View::PSP
421 A view component for rendering pages using PSP, a Perl extension
422 implementing a JSP-like templating system. See Text::PSP.
423
424 Catalyst::View::Petal
425 A view component for rendering pages using Petal, the Perl Template
426 Attribute Language, an XML-based templating system. See Petal.
427
428 Catalyst::View::TT
429 A view component for rendering pages with Template Toolkit. See
430 Template::Manual.
431
432 Catalyst::View::XSLT
433 Catalyst::View::vCard
435 Catalyst::Action::RenderView
436 Creates a sane, standard end method for your application.
437
439 Catalyst::Controller::BindLex
440 Lets you mark lexical variables with a "Stashed" attribute,
441 automatically passing them to the stash. Discouraged by the author.
442
443 Catalyst::Model::DBIC
444 Replaced by Catalyst::Model::DBIC::Schema.
445
446 Catalyst::Plugin::Authentication::Basic::Remote
447 Replaced by Catalyst::Plugin::Authentication::Credential::HTTP.
448
449 Catalyst::Plugin::Authentication::CDBI
450 Replaced by Catalyst::Plugin::Authentication::Store::DBIC.
451
452 Catalyst::Plugin::Authentication::CDBI::Basic
453 Replaced by Catalyst::Plugin::Authentication::Credential::HTTP.
454
455 Catalyst::Plugin::Authentication::LDAP
456 Replaced by Catalyst::Plugin::Authentication::Store::LDAP.
457
458 Catalyst::Plugin::Authentication::Simple
459 Replaced by Catalyst::Plugin::Authentication.
460
461 Catalyst::Plugin::Authorization::CDBI::GroupToken
462 Catalyst::Plugin::CDBI::Transaction
463 Catalyst::Plugin::Config::*
464 The Catalyst::Plugin::Config::JSON and Catalyst::Plugin::Config::YAML
465 modules have been replaced by their corresponding
466 Catalyst::Plugin::ConfigLoader modules.
467
468 Catalyst::Plugin::DefaultEnd
469 Replaced by Catalyst::Action::RenderView
470
471 Catalyst::Plugin::SanitizeUrl
472 Catalyst::Plugin::SanitizeUrl::PrepAction
473 Catalyst::Plugin::Session::*
474 The Catalyst::Plugin::Session::CGISession,
475 Catalyst::Plugin::Session::FastMmap, Catalyst::Plugin::Session::Flex,
476 and Catalyst::Plugin::Session::Manager modules have been replaced by
477 the <Catalyst::Plugin::Session> framework.
478
480 Catalyst Contributors, see Catalyst.pm
481
483 This library is free software. You can redistribute it and/or modify it
484 under the same terms as Perl itself.
485
486
487
488perl v5.12.0 2009-12-28 Catalyst::Manual::Components(3)