tests for dispatching to actions
[catagits/Catalyst-Action-Serialize-Data-Serializer.git] / lib / Catalyst / Action / REST.pm
index e4f08f1..2ee9716 100644 (file)
@@ -23,7 +23,7 @@ sub new {
   my $class  = shift;
   my $config = shift;
   Catalyst::Request::REST->_insert_self_into( $config->{class} );
-  return $class->SUPER::new($config, @_);
+  return $class->next::method($config, @_);
 }
 
 =head1 NAME
@@ -94,7 +94,10 @@ sub dispatch {
     my ($code, $name);
 
     # Common case, for foo_GET etc
-    if ($code = $controller->can($rest_method)) {
+    if ( $code = $controller->action_for($rest_method) ) {
+        $c->execute( $self->class, $self, @{ $c->req->args } );
+        return $c->forward( $code,  $c->req->args );
+     } elsif ($code = $controller->can($rest_method)) {
         # Exceute normal action
         $c->execute( $self->class, $self, @{ $c->req->args } );
         $name = $rest_method;
@@ -173,10 +176,24 @@ L<Catalyst::Action::Serialize>, L<Catalyst::Action::Deserialize>
 
 =item Q: I'm getting a "415 Unsupported Media Type" error. What gives?!
 
+<<<<<<< HEAD:lib/Catalyst/Action/REST.pm
+A:  Most likely, you haven't set Content-type equal to "application/json", or one of the
+accepted return formats.  You can do this by setting it in your query string thusly:
+?content-type=application%2Fjson (where %2F == / uri escaped).
+
+**NOTE** Apache will refuse %2F unless configured otherise.
+Make sure AllowEncodedSlashes On is in your httpd.conf file in order for this to run smoothly.
+
+=cut
+
+=cut
+
+=======
 A:  Most likely, you haven't set Content-type equal to "application/json", or
 one of the accepted return formats.  You can do this by setting it in your query
 accepted return formats.  You can do this by setting it in your query string
 thusly: C<< ?content-type=application%2Fjson (where %2F == / uri escaped). >>
+>>>>>>> f04ed654a172628f642bdefe8483c1e6becf9ad1:lib/Catalyst/Action/REST.pm
 
 B<NOTE> Apache will refuse %2F unless configured otherise.
 Make sure C<< AllowEncodedSlashes On >> is in your httpd.conf file in orde
@@ -184,10 +201,6 @@ for this to run smoothly.
 
 =back
 
-=head1 MAINTAINER
-
-Hans Dieter Pearcey
-
 =head1 CONTRIBUTORS
 
 Christopher Laco
@@ -200,6 +213,8 @@ Daisuke Maki <daisuke@endeworks.jp>
 
 J. Shirley <jshirley@gmail.com>
 
+Hans Dieter Pearcey
+
 Tomas Doran (t0m) <bobtfish@bobtfish.net>
 
 =head1 AUTHOR