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