-#
-# Catlyst::Action::Serialize::YAML.pm
-# Created by: Adam Jacob, Marchex, <adam@marchex.com>
-# Created on: 10/12/2006 03:00:32 PM PDT
-#
-# $Id$
-
package Catalyst::Action::Serialize::YAML;
-use strict;
-use warnings;
+use Moose;
+use namespace::autoclean;
-use base 'Catalyst::Action';
+extends 'Catalyst::Action';
use YAML::Syck;
sub execute {
my $self = shift;
- my ( $controller, $c, $test ) = @_;
-
- my $stash_key = $controller->serialize->{'stash_key'} || 'rest';
-
- if (! $c->response->content_type ) {
- $c->response->content_type($c->req->content_type);
- }
- return 1 if $c->req->method eq 'HEAD';
- return 1 if length( $c->response->body );
- return 1 if scalar @{ $c->error };
- return 1 if $c->response->status =~ /^(?:204|3\d\d)$/;
+ my ( $controller, $c ) = @_;
- $c->response->output( Dump( $c->stash->{$stash_key} ) );
+ my $stash_key = (
+ $controller->{'serialize'} ?
+ $controller->{'serialize'}->{'stash_key'} :
+ $controller->{'stash_key'}
+ ) || 'rest';
+ my $output = $self->serialize($c->stash->{$stash_key});
+ $c->response->output( $output );
return 1;
-};
+}
+
+sub serialize {
+ my $self = shift;
+ my $data = shift;
+ Dump($data);
+}
1;