package Catalyst::Action::REST;
+use utf8;
use Moose;
use namespace::autoclean;
BEGIN { require 5.008001; }
-our $VERSION = '1.04';
-$VERSION = eval $VERSION;
-
sub BUILDARGS {
my $class = shift;
my $config = shift;
return $class->SUPER::BUILDARGS($config, @_);
}
+=encoding utf-8
+
=head1 NAME
Catalyst::Action::REST - Automated REST Method Dispatching
sub get_allowed_methods {
my ( $self, $controller, $c, $name ) = @_;
my $class = ref($controller) ? ref($controller) : $controller;
- my $methods = Class::Inspector->methods($class);
- return map { /^$name\_(.+)$/ } @$methods;
+ my $methods = {
+ map { /^$name\_(.+)$/ ? ( $1 => 1 ) : () }
+ @{ Class::Inspector->methods($class) }
+ };
+ $methods->{'HEAD'} = 1 if $methods->{'GET'};
+ delete $methods->{'not_implemented'};
+ return sort keys %$methods;
};
sub _return_options {
Wallace Reis E<lt>wreis@cpan.orgE<gt>
+André Walker (andrewalker) <andre@cpan.org>
+
=head1 COPYRIGHT
-Copyright (c) 2006-2012 the above named AUTHOR and CONTRIBUTORS
+Copyright (c) 2006-2015 the above named AUTHOR and CONTRIBUTORS
=head1 LICENSE