version 1.2, 2010/01/19 03:18:34 |
version 1.6, 2010/02/13 22:24:15 |
|
|
package Text::Todo::REST::API::Representations::text; |
package Text::Todo::REST::API::Representations::text; |
|
|
# $AFresh1: text.pm,v 1.1 2010/01/18 03:51:40 andrew Exp $ |
# $AFresh1: text.pm,v 1.5 2010/02/13 21:46:59 andrew Exp $ |
|
|
use base 'Text::Todo::REST::API::Representations'; |
use base 'Text::Todo::REST::API::Representations'; |
|
|
|
|
{ |
{ |
sub content_type { return 'text/plain' } |
sub content_type { return 'text/plain' } |
|
|
sub can_format { |
sub can_render { |
my ( $class, $format ) = @_; |
my ( $class, $format ) = @_; |
return if !defined $format; |
return if !defined $format; |
|
|
|
|
return exists $handled_formats{$format}; |
return exists $handled_formats{$format}; |
} |
} |
|
|
sub dump_files { |
sub _render { |
my ( $self, $format, @input ) = @_; |
my ( $self, $format, $data ) = @_; |
|
|
|
$data ||= []; |
|
|
my $output; |
my $output; |
foreach my $line (@input) { |
foreach my $line ( @{$data} ) { |
$output .= "$line\n"; |
$output .= "$line\n"; |
} |
} |
return $output; |
return $output; |
} |
} |
|
sub render_files { _render(@_) } |
|
sub render_tags { _render(@_) } |
|
|
sub dump_list { |
sub render_list { |
my ( $self, $format, @input ) = @_; |
my ( $self, $format, $input ) = @_; |
|
|
my $output; |
return if !defined $input; |
foreach my $o (@input) { |
|
$output .= "$o->{text}\n"; |
if ( ref $input ne 'ARRAY' ) { |
|
$input = [$input]; |
} |
} |
return $output; |
|
} |
|
|
|
sub dump_entry { |
return $self->_render($format, [ map "$_->{text}", @{ $input } ]); |
my ( $self, @args ) = @_; |
|
return $self->dump_list(@args); |
|
} |
} |
|
|
|
sub render_entry { render_list(@_) } |
} |
} |
|
|
1; # Magic true value required at end of module |
1; # Magic true value required at end of module |