diff options
Diffstat (limited to '')
-rw-r--r-- | lib/Plack/Middleware/Debug/Dancer/Routes.pm | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/lib/Plack/Middleware/Debug/Dancer/Routes.pm b/lib/Plack/Middleware/Debug/Dancer/Routes.pm index d214370..aeed516 100644 --- a/lib/Plack/Middleware/Debug/Dancer/Routes.pm +++ b/lib/Plack/Middleware/Debug/Dancer/Routes.pm @@ -5,32 +5,35 @@ package Plack::Middleware::Debug::Dancer::Routes; use strict; use warnings; use parent qw(Plack::Middleware::Debug::Base); -use Dancer::Session; sub run { my ( $self, $env, $panel ) = @_; return sub { - my $routes = Dancer::Route::Registry->routes(); - my $hash_routes; - - foreach my $method ( keys %$routes ) { - map { - my $name = $_->{method} . ' ' . $_->{route}; - $hash_routes->{$name} = { - method => $_->{method}, - options => $_->{options}, - params => $_->{params}, - route => $_->{route} - }; - } @{ $routes->{$method} }; + my $hash_routes = {}; + foreach my $app ( Dancer::App->applications ) { + my $routes = $app->{registry}->{routes}; + foreach my $method (keys %$routes) { + foreach (@{$routes->{$method}}) { + $hash_routes->{$method}->{$_->{_compiled_regexp}} = $_->{_params}; + } + } + # map { + # my $name = $_->{method} . ' ' . $_->{route}; + # $hash_routes->{$name} = { + # method => $_->{method}, + # options => $_->{options}, + # params => $_->{params}, + # route => $_->{route} + # }; + # } @{ $routes->{$method} }; } $panel->title('Dancer::Route'); $panel->nav_subtitle( "Dancer::Route (" . ( keys %$hash_routes ) . ")" ); $panel->content( - sub { $self->render_hash( $hash_routes, [ keys %$hash_routes ] ) } + sub { $self->render_hash( $hash_routes, [keys %$hash_routes] ) } ); }; } |