version 1.3, 2010/02/13 21:48:28 |
version 1.4, 2010/02/14 06:14:57 |
|
|
package Text::Todo::REST::API::Actions::GET; |
package Text::Todo::REST::API::Actions::GET; |
|
|
# $AFresh1: GET.pm,v 1.2 2010/01/31 03:10:39 andrew Exp $ |
# $AFresh1: GET.pm,v 1.3 2010/02/13 21:48:28 andrew Exp $ |
|
|
use warnings; |
use warnings; |
use strict; |
use strict; |
|
|
} |
} |
|
|
sub get_entry { |
sub get_entry { |
my ( $self, $todo, $options) = @_; |
my ( $self, $todo, $options ) = @_; |
my $entry = $self->_which_key($options, 'entry'); |
my $entry = $self->_which_key( $options, 'entry' ); |
|
|
my $list = $self->get_list($todo); |
my $list = $self->get_list($todo); |
|
|
|
|
} |
} |
|
|
sub get_tags { |
sub get_tags { |
my ( $self, $todo, $options) = @_; |
my ( $self, $todo, $options ) = @_; |
my $tag = $self->_which_key($options, 'tags'); |
my $tag = $self->_which_key( $options, 'tags' ); |
return [ $todo->listtag($tag) ]; |
if ($tag) { |
|
return [ $todo->listtag($tag) ]; |
|
} |
|
else { |
|
return $todo->known_tags; |
|
} |
} |
} |
|
|
sub _which_key { |
sub _which_key { |
my ($self, $key, $type) = @_; |
my ( $self, $key, $type ) = @_; |
|
|
if ( !defined $key ) { |
return if !defined $key; |
return $self->_fail(caller() . ' requires arguments'); |
|
} |
if ( ref $key eq 'ARRAY' ) { |
elsif ( ref $key eq 'ARRAY' ) { |
|
$key = $key->[0]; |
$key = $key->[0]; |
} |
} |
elsif ( ref $key eq 'HASH' ) { |
elsif ( ref $key eq 'HASH' ) { |
|
|
$key = $key->{$type}; |
$key = $key->{$type}; |
} |
} |
else { |
else { |
return $self->_fail(caller() . ' requires key [' . $type . ']'); |
return $self->_fail( |
|
caller() . ' requires key [' . $type . ']' ); |
} |
} |
} |
} |
|
|