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=62f05d73fb4241d09a67c143a89e5c09a17484f3;hpb=1c4b501bc1fcd7662bd670f214928e950f2f1cab;p=catagits%2FCatalyst-Action-REST.git diff --git a/lib/Catalyst/Action/Deserialize.pm b/lib/Catalyst/Action/Deserialize.pm index 62f05d7..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.93'; +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