a87a015c3eef36ec07ac38ee64a03b0fe2cd006a
[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::DeserializeFormat';
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;