X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=lib%2FCatalyst.pm;h=aca49201cfe30c72d81b99f005cff2ce518e49ec;hp=8bc6c700bf0002b97dd43a88a76e5968d77e80d0;hb=b5ecfcf07b8ffe7e9984f0279c8781ce51c6ac6a;hpb=640faa87f0c572b58acd22124bfa6f6c59106873 diff --git a/lib/Catalyst.pm b/lib/Catalyst.pm index 8bc6c70..aca4920 100644 --- a/lib/Catalyst.pm +++ b/lib/Catalyst.pm @@ -197,43 +197,37 @@ they are loaded in exactly the order in which they appear. The following flags are supported: -=over 4 - -=item -Debug +=head2 -Debug Enables debug output. -=item -Engine +=head2 -Engine Forces Catalyst to use a specific engine. Omit the C prefix of the engine name, i.e.: use Catalyst qw/-Engine=CGI/; -=item -Home +=head2 -Home Forces Catalyst to use a specific home directory, e.g.: use Catalyst qw[-Home=/usr/sri]; -=item -Log +=head2 -Log Specifies log level. -=back - =head1 METHODS =head2 Information about the current request -=over 4 - -=item $c->action +=head2 $c->action Returns a L object for the current action, which stringifies to the action name. See L. -=item $c->namespace +=head2 $c->namespace Returns the namespace of the current action, i.e., the uri prefix corresponding to the controller of the current action. For example: @@ -241,22 +235,18 @@ corresponding to the controller of the current action. For example: # in Controller::Foo::Bar $c->namespace; # returns 'foo/bar'; -=item $c->request +=head2 $c->request -=item $c->req +=head2 $c->req Returns the current L object. See L. -=back - =head2 Processing and response to the current request -=over 4 +=head2 $c->forward( $action [, \@arguments ] ) -=item $c->forward( $action [, \@arguments ] ) - -=item $c->forward( $class, $method, [, \@arguments ] ) +=head2 $c->forward( $class, $method, [, \@arguments ] ) Forwards processing to a private action. If you give a class name but no method, C is called. You may also optionally pass arguments @@ -273,9 +263,9 @@ C<$c-Ereq-Eargs> will be restored to the previous values. sub forward { my $c = shift; $c->dispatcher->forward( $c, @_ ) } -=item $c->detach( $action [, \@arguments ] ) +=head2 $c->detach( $action [, \@arguments ] ) -=item $c->detach( $class, $method, [, \@arguments ] ) +=head2 $c->detach( $class, $method, [, \@arguments ] ) The same as C, but doesn't return. @@ -283,11 +273,11 @@ The same as C, but doesn't return. sub detach { my $c = shift; $c->dispatcher->detach( $c, @_ ) } -=item $c->error +=head2 $c->error -=item $c->error($error, ...) +=head2 $c->error($error, ...) -=item $c->error($arrayref) +=head2 $c->error($arrayref) Returns an arrayref containing error messages. If Catalyst encounters an error while processing a request, it stores the error in $c->error. This @@ -316,13 +306,13 @@ sub error { return $c->{error} || []; } -=item $c->response +=head2 $c->response -=item $c->res +=head2 $c->res Returns the current L object. -=item $c->stash +=head2 $c->stash Returns a hashref to the stash, which may be used to store data and pass it between components during a request. You can also set hash keys by @@ -350,19 +340,15 @@ sub stash { return $c->{stash}; } -=item $c->state +=head2 $c->state Contains the return value of the last executed action. -=back - =head2 Component Accessors -=over 4 +=head2 $c->comp($name) -=item $c->comp($name) - -=item $c->component($name) +=head2 $c->component($name) Gets a component object by name. This method is no longer recommended, unless you want to get a specific component by full @@ -404,7 +390,7 @@ sub component { return sort keys %{ $c->components }; } -=item $c->controller($name) +=head2 $c->controller($name) Gets a L instance by name. @@ -419,7 +405,7 @@ sub controller { return $c->comp("C::$name"); } -=item $c->model($name) +=head2 $c->model($name) Gets a L instance by name. @@ -434,7 +420,7 @@ sub model { return $c->comp("M::$name"); } -=item $c->view($name) +=head2 $c->view($name) Gets a L instance by name. @@ -449,19 +435,15 @@ sub view { return $c->comp("V::$name"); } -=back - =head2 Class data and helper classes -=over 4 - -=item $c->config +=head2 $c->config Returns or takes a hashref containing the application's configuration. __PACKAGE__->config({ db => 'dsn:SQLite:foo.db' }); -=item $c->debug +=head2 $c->debug Overload to enable debug messages (same as -Debug option). @@ -469,17 +451,17 @@ Overload to enable debug messages (same as -Debug option). sub debug { 0 } -=item $c->dispatcher +=head2 $c->dispatcher Returns the dispatcher instance. Stringifies to class name. See L. -=item $c->engine +=head2 $c->engine Returns the engine instance. Stringifies to the class name. See L. -=item $c->log +=head2 $c->log Returns the logging object instance. Unless it is already set, Catalyst sets this up with a L object. To use your own log class: @@ -492,13 +474,9 @@ L man page. =cut -=back - =head2 Utility methods -=over 4 - -=item $c->path_to(@path) +=head2 $c->path_to(@path) Merges C<@path> with C<$c-Econfig-E{home}> and returns a L object. @@ -516,7 +494,7 @@ sub path_to { else { return file( $c->config->{home}, @path ) } } -=item $c->plugin( $name, $class, @args ) +=head2 $c->plugin( $name, $class, @args ) Helper method for plugins. It creates a classdata accessor/mutator and loads and instantiates the given class. @@ -551,7 +529,7 @@ sub plugin { if $class->debug; } -=item MyApp->setup +=head2 MyApp->setup Initializes the dispatcher and engine, loads any plugins, and loads the model, view, and controller components. You may also specify an array @@ -683,7 +661,7 @@ EOF $class->log->_flush() if $class->log->can('_flush'); } -=item $c->uri_for( $path, [ @args ] ) +=head2 $c->uri_for( $path, [ @args ] ) Merges path with C<$c-Erequest-Ebase> for absolute uri's and with C<$c-Enamespace> for relative uri's, then returns a @@ -713,7 +691,7 @@ sub uri_for { $base )->canonical; } -=item $c->welcome_message +=head2 $c->welcome_message Returns the Catalyst welcome HTML page. @@ -858,32 +836,28 @@ perldoc setup_dispatcher +=head2 $c->setup_dispatcher Sets up dispatcher. @@ -1556,7 +1530,7 @@ sub setup_dispatcher { $class->dispatcher( $dispatcher->new ); } -=item $c->setup_engine +=head2 $c->setup_engine Sets up engine. @@ -1680,7 +1654,7 @@ qq/Couldn't load engine "$engine" (maybe you forgot to install it?), "$@"/ $class->engine( $engine->new ); } -=item $c->setup_home +=head2 $c->setup_home Sets up the home directory. @@ -1707,7 +1681,7 @@ sub setup_home { } } -=item $c->setup_log +=head2 $c->setup_log Sets up log. @@ -1734,7 +1708,7 @@ sub setup_log { } } -=item $c->setup_plugins +=head2 $c->setup_plugins Sets up plugins. @@ -1762,11 +1736,11 @@ sub setup_plugins { } } -=item $c->stack +=head2 $c->stack Returns the stack. -=item $c->write( $data ) +=head2 $c->write( $data ) Writes $data to the output stream. When using this method directly, you will need to manually set the C header to the length of @@ -1783,7 +1757,7 @@ sub write { return $c->engine->write( $c, @_ ); } -=item version +=head2 version Returns the Catalyst version number. Mostly useful for "powered by" messages in template systems. @@ -1792,8 +1766,6 @@ messages in template systems. sub version { return $Catalyst::VERSION } -=back - =head1 INTERNAL ACTIONS Catalyst uses internal actions like C<_DISPATCH>, C<_BEGIN>, C<_AUTO>, @@ -1883,23 +1855,19 @@ Wiki: =head1 SEE ALSO -=over 4 - -=item L - The Catalyst Manual - -=item L, L - Base classes for components +=head2 L - The Catalyst Manual -=item L - Core engine +=head2 L, L - Base classes for components -=item L - Log class. +=head2 L - Core engine -=item L - Request object +=head2 L - Log class. -=item L - Response object +=head2 L - Request object -=item L - The test suite. +=head2 L - Response object -=back +=head2 L - The test suite. =head1 CREDITS