X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FAction%2FDeserialize.pm;h=29f461fe37ee2f8cba41221fb5072d96c906e791;hb=44fa7f9429568532ea892e2020c20177b71cb736;hp=fcf7c6ad41d07d8f4b37cc7882a23fd032a4eaff;hpb=351f252f57354a5a0c50e3c931b0addd4f1988ff;p=catagits%2FCatalyst-Action-REST.git diff --git a/lib/Catalyst/Action/Deserialize.pm b/lib/Catalyst/Action/Deserialize.pm index fcf7c6a..29f461f 100644 --- a/lib/Catalyst/Action/Deserialize.pm +++ b/lib/Catalyst/Action/Deserialize.pm @@ -8,7 +8,7 @@ use Module::Pluggable::Object; use MRO::Compat; use Moose::Util::TypeConstraints; -our $VERSION = '0.98'; +our $VERSION = '1.04'; $VERSION = eval $VERSION; has plugins => ( is => 'rw' ); @@ -47,9 +47,9 @@ sub execute { $rc = $sclass->execute( $controller, $c ); } if ( $rc eq "0" ) { - return $self->_unsupported_media_type( $c, $content_type ); + return $self->unsupported_media_type( $c, $content_type ); } elsif ( $rc ne "1" ) { - return $self->_serialize_bad_request( $c, $content_type, $rc ); + return $self->serialize_bad_request( $c, $content_type, $rc ); } } @@ -120,6 +120,13 @@ Will work just fine. When you use this module, the request class will be changed to L. +=head1 CUSTOM ERRORS + +For building custom error responses when de-serialization fails, you can create +an ActionRole (and use L to apply it to the +C action) which overrides C and/or C<_serialize_bad_request> +methods. + =head1 SEE ALSO You likely want to look at L, which implements