use warnings FATAL => 'all';
use 5.008;
-our $VERSION = '0.002';
+our $VERSION = '0.004';
sub setup_all_strictures {
strict->import;
# matches: GET /user/1.htm?show_details=1
# GET /user/1.htm
sub (GET + /user/* + ?show_details~ + .htm|.html|.xhtml) {
- shift; my ($user_id, $show_details) = @_;
+ my ($self, $user_id, $show_details) = @_;
...
},
# matches: POST /user?username=frew
# POST /user?username=mst&first_name=matt&last_name=trout
sub (POST + /user + ?username=&*) {
- shift; my ($username, $misc_params) = @_;
+ my ($self, $username, $misc_params) = @_;
...
},
# matches: DELETE /user/1/friend/2
sub (DELETE + /user/*/friend/*) {
- shift; my ($user_id, $friend_id) = @_;
+ my ($self, $user_id, $friend_id) = @_;
...
},
# matches: PUT /user/1?first_name=Matt&last_name=Trout
sub (PUT + /user/* + ?first_name~&last_name~) {
- shift; my ($user_id, $first_name, $last_name) = @_;
+ my ($self, $user_id, $first_name, $last_name) = @_;
...
},
sub (/user/*/...) {
},
# matches: DELETE /user/1/role/1
sub (DELETE + /role/*) {
- my $role_id = shift;
+ my $role_id = $_[1];
...
},
];
To gain the benefit of using some middleware, specifically
Plack::Middleware::Session access to the ENV hash is needed. This is provided
in arguments to the dispatched handler. You can access this hash with the
-exported +ENV constant.
+exported +PSGI_ENV constant.
sub (GET + /foo + ?some_param=) {
- my($self, $some_param, $env) = @_[0, 1, +ENV];
+ my($self, $some_param, $env) = @_[0, 1, +PSGI_ENV];
=head1 EXPORTED SUBROUTINES