#
# Catlyst::Action::Serialize.pm
-# Created by: Adam Jacob, Marchex, <adam@marchex.com>
+# Created by: Adam Jacob, Marchex, <adam@hjksolutions.com>
#
# $Id$
use base 'Catalyst::Action::SerializeBase';
use Module::Pluggable::Object;
-use Data::Dump qw(dump);
+use MRO::Compat;
sub execute {
my $self = shift;
my ( $controller, $c ) = @_;
- $self->NEXT::execute(@_);
+ $self->maybe::next::method(@_);
return 1 if $c->req->method eq 'HEAD';
return 1 if length( $c->response->body );
$c->log->info("Could not find a serializer for $content_type");
} else {
$c->log->info(
- "Could not find a serializer for an empty content type");
+ "Could not find a serializer for an empty content-type");
}
return 1;
}
=head1 CONFIGURATION
-=over 4
+=head2 map
-=item default
+Takes a hashref, mapping Content-Types to a given serializer plugin.
-The Content-Type of the default Serialization format. This must be a
-Content-Type associated with a plugin in the "map" section below.
+=head2 default
-This is used if a requested content-type is not recognized.
+This is the 'fall-back' Content-Type if none of the requested or acceptable
+types is found in the L</map>. It must be an entry in the L</map>.
-=item stash_key
+=head2 stash_key
-We will serialize the data that lives in this location in the stash. So
-if the value is "rest", we will serialize the data under:
+Specifies the key of the stash entry holding the data that is to be serialized.
+So if the value is "rest", we will serialize the data under:
$c->stash->{'rest'}
-=item map
+=head2 content_type_stash_key
-Takes a hashref, mapping Content-Types to a given plugin.
+Specifies the key of the stash entry that optionally holds an overriding
+Content-Type. If set, and if the specified stash entry has a valid value,
+then it takes priority over the requested content types.
-=back
+This can be useful if you want to dynamically force a particular content type,
+perhaps for debugging.
=head1 HELPFUL PEOPLE
L<Catalyst::Action::Deserialize>, L<Catalyst::Action::REST>
-=head1 AUTHOR
+=head1 AUTHORS
-Adam Jacob <adam@stalecoffee.org>, with lots of help from mst and jrockway
-
-Marchex, Inc. paid me while I developed this module. (http://www.marchex.com)
+See L<Catalyst::Action::REST> for authors.
=head1 LICENSE
You may distribute this code under the same terms as Perl itself.
=cut
-