cd885c5637eb3b83b3b83f90068436283e445895
[catagits/Catalyst-Action-REST.git] / lib / Catalyst / Action / Serialize / Data / Serializer.pm
1 package Catalyst::Action::Serialize::Data::Serializer;
2 use Moose;
3 extends 'Catalyst::Action';
4 with 'Catalyst::ActionRole::Serialize';
5 use Data::Serializer;
6 use namespace::clean -except => 'meta';
7
8 sub serialize {
9   my ($self, $data, $c, $serializer) = @_;
10   unless (eval "use $serializer; 1") {
11     $c->log->info("Could not load $serializer, refusing to serialize: $@");
12     return 0;
13   }
14   my $d = Data::Serializer->new(serializer => $serializer);
15   return $d->raw_serialize($data);
16 }
17
18 1;