Catalyst::DispatchType - DispatchType Base Class


Catalyst-Runtime documentation Contained in the Catalyst-Runtime distribution.

Index


Code Index:

NAME

Top

Catalyst::DispatchType - DispatchType Base Class

SYNOPSIS

Top

See Catalyst.

DESCRIPTION

Top

This is an abstract base class for Dispatch Types.

From a code perspective, dispatch types are used to find which actions to call for a given request URL. Website authors will typically work with them via subroutine names attributes; a description of dispatch at the attribute/URL level is given in Catalyst::Manual::Intro.

METHODS

Top

$self->list($c)

abstract method, to be implemented by dispatchtypes. Called to display info in debug log.

$self->match( $c, $path )

abstract method, to be implemented by dispatchtypes. Returns true if the dispatch type matches the given path

$self->register( $c, $action )

abstract method, to be implemented by dispatchtypes. Takes a context object and a Catalyst::Action object.

Should return true if it registers something, or false otherwise.

$self->uri_for_action( $action, \@captures )

abstract method, to be implemented by dispatchtypes. Takes a Catalyst::Action object and an arrayref of captures, and should return either a URI part which if placed in $c->req->path would cause $self->match to match this action and set $c->req->captures to the supplied arrayref, or undef if unable to do so.

$self->expand_action

Default fallback, returns nothing. See Catalyst::Dispatcher for more info about expand_action.

AUTHORS

Top

Catalyst Contributors, see Catalyst.pm

COPYRIGHT

Top


Catalyst-Runtime documentation Contained in the Catalyst-Runtime distribution.
package Catalyst::DispatchType;

use Moose;
with 'MooseX::Emulate::Class::Accessor::Fast';
no Moose;

sub list { }

sub match { die "Abstract method!" }

sub register { }

sub uri_for_action { }

sub expand_action { }

sub _is_low_precedence { 0 }

__PACKAGE__->meta->make_immutable;

1;