version 1.2, 2010/01/17 23:15:00 |
version 1.4, 2010/01/18 00:30:42 |
|
|
package Text::Todo::REST::API; |
package Text::Todo::REST::API; |
|
|
# $AFresh1$ |
# $AFresh1: API.pm,v 1.3 2010/01/17 23:48:06 andrew Exp $ |
|
|
use warnings; |
use warnings; |
use strict; |
use strict; |
|
|
return 1; |
return 1; |
} |
} |
|
|
|
sub content_type { return }; |
|
|
sub Dump { |
sub Dump { |
my ($self) = @_; |
my ($self) = @_; |
return $self->fail( 'Unable to Dump [' . $self->_action . ']' ); |
return $self->fail( 'Unable to Dump [' . $self->_action . ']' ); |
|
|
return $self->fail( 'Unable to Load [' . $self->_action . ']' ); |
return $self->fail( 'Unable to Load [' . $self->_action . ']' ); |
} |
} |
|
|
sub GET { |
sub _handle_action { |
my ( $self, $params ) = @_; |
my ( $self, $method, $params ) = @_; |
|
|
if ( exists $action_handlers{GET}{ $self->_action } ) { |
if ( exists $action_handlers{$method}{ $self->_action } ) { |
my $method = $action_handlers{GET}{ $self->_action }; |
my $a = $action_handlers{$method}{ $self->_action }; |
return $self->$method( $self->_args, $params ); |
return $self->$a( $self->_args, $params ); |
} |
} |
|
|
return $self->fail( 'Unable to handle GET [' . $self->_action . ']' ); |
return $self->fail( |
|
'Unable to handle ' . $method . ' [' . $self->_action . ']' ); |
} |
} |
|
|
|
sub GET { |
|
my ( $self, @args ) = @_; |
|
return $self->_handle_action( 'GET', @args ); |
|
} |
|
|
sub get_entry { |
sub get_entry { |
my ( $self, $key ) = @_; |
my ( $self, $key ) = @_; |
|
|
|
|
return $todo_of{$ident}->listtag($tag); |
return $todo_of{$ident}->listtag($tag); |
} |
} |
|
|
sub POST { croak "Unsupported [POST]" } |
sub POST { |
sub PUT { croak "Unsupported [PUT]" } |
my ( $self, @args ) = @_; |
sub DELETE { croak "Unsupported [DELETE]" } |
return $self->_handle_action( 'POST', @args ); |
|
} |
|
|
|
sub PUT { |
|
my ( $self, @args ) = @_; |
|
return $self->_handle_action( 'PUT', @args ); |
|
} |
|
|
|
sub DELETE { |
|
my ( $self, @args ) = @_; |
|
return $self->_handle_action( 'DELETE', @args ); |
|
} |
|
|
sub fail { |
sub fail { |
my ( $self, @message ) = @_; |
my ( $self, @message ) = @_; |