package Catalyst::Action::Deserialize::Data::Serializer;
use Moose;
extends 'Catalyst::Action';
-with 'Catalyst::ActionRole::Deserialize';
+with 'Catalyst::ActionRole::DeserializeFormat';
use Data::Serializer;
use namespace::clean -except => 'meta';
package Catalyst::Action::Deserialize::JSON;
use Moose;
extends 'Catalyst::Action';
-with 'Catalyst::ActionRole::Deserialize';
+with 'Catalyst::ActionRole::DeserializeFormat';
use JSON qw(decode_json);
use namespace::clean -except => 'meta';
package Catalyst::Action::Deserialize::View;
use Moose;
extends 'Catalyst::Action';
-with 'Catalyst::ActionRole::Deserialize';
+with 'Catalyst::ActionRole::DeserializeFormat';
use namespace::clean -except => 'meta';
sub deserialize { undef };
package Catalyst::Action::Deserialize::XML::Simple;
use Moose;
extends 'Catalyst::Action';
-with 'Catalyst::ActionRole::Deserialize';
+with 'Catalyst::ActionRole::DeserializeFormat';
use XML::Simple;
use namespace::clean -except => 'meta';
package Catalyst::Action::Deserialize::YAML;
use Moose;
extends 'Catalyst::Action';
-with 'Catalyst::ActionRole::Deserialize';
+with 'Catalyst::ActionRole::DeserializeFormat';
use YAML::Syck;
use namespace::clean -except => 'meta';
package Catalyst::Action::Serialize::Data::Serializer;
use Moose;
extends 'Catalyst::Action';
-with 'Catalyst::ActionRole::Serialize';
+with 'Catalyst::ActionRole::SerializeFormat';
use Data::Serializer;
use namespace::clean -except => 'meta';
package Catalyst::Action::Serialize::JSON;
use Moose;
extends 'Catalyst::Action';
-with 'Catalyst::ActionRole::Serialize';
+with 'Catalyst::ActionRole::SerializeFormat';
use JSON qw(encode_json);
use namespace::clean -except => 'meta';
package Catalyst::Action::Serialize::View;
use Moose;
extends 'Catalyst::Action';
-with 'Catalyst::ActionRole::Serialize';
+with 'Catalyst::ActionRole::SerializeFormat';
use namespace::clean -except => 'meta';
sub serialize {
package Catalyst::Action::Serialize::XML::Simple;
use Moose;
extends 'Catalyst::Action';
-with 'Catalyst::ActionRole::Serialize';
+with 'Catalyst::ActionRole::SerializeFormat';
use XML::Simple;
use namespace::clean -except => 'meta';
package Catalyst::Action::Serialize::YAML;
use Moose;
extends 'Catalyst::Action';
-with 'Catalyst::ActionRole::Serialize';
+with 'Catalyst::ActionRole::SerializeFormat';
use YAML::Syck;
use namespace::clean -except => 'meta';
-package Catalyst::ActionRole::Deserialize;
+package Catalyst::ActionRole::DeserializeFormat;
use Moose::Role;
use Moose::Util qw(does_role);
use Catalyst::RequestRole::Deserialize;
-package Catalyst::ActionRole::Serialize;
+package Catalyst::ActionRole::SerializeFormat;
use Moose::Role;
use Catalyst::ControllerRole::SerializeConfig;
use Moose::Util qw(does_role);
requires 'serialize';
around execute => sub {
- # the original Serialize::* actions never executed their body, so this is
- # ignored.
my $next = shift;
my ($self, $controller, $c, $arg) = @_;
+
+ # XXX is ignoring the return value here correct? the original serialize
+ # actions never even called their body.
+ $self->$next($controller, $c, $arg)
+ if blessed $self;
+
Catalyst::ControllerRole::SerializeConfig->meta->apply($controller)
unless does_role($controller, 'Catalyst::ControllerRole::SerializeConfig');