CGI-Application-Plugin-DeclareREST

 view release on metacpan or  search on metacpan

lib/CGI/Application/Plugin/DeclareREST.pm  view on Meta::CPAN

	
	my $router = $routes{ $class } ||= Routes::Tiny->new( strict_trailing_slash => 0 );
	return $router->add_route( @_ );
}


sub get {
	my $sub = pop;
	my ($path, %args) = @_;
	
	my $caller = caller();
	my $router = $routes{ $caller } ||= Routes::Tiny->new( strict_trailing_slash => 0 );
	return $router->add_route($path, method => 'get', name => $sub, %args);
}


sub post {
	my $sub = pop;
	my ($path, %args) = @_;
	
	my $caller = caller();
	my $router = $routes{ $caller } ||= Routes::Tiny->new( strict_trailing_slash => 0 );
	return $router->add_route($path, method => 'post', name => $sub, %args );
}


sub del {
	my $sub = pop;
	my ($path, %args) = @_;
	
	my $caller = caller();
	my $router = $routes{ $caller } ||= Routes::Tiny->new( strict_trailing_slash => 0 );
	return $router->add_route($path, method => 'delete', name => $sub, %args );
}


sub put {
	my $sub = pop;
	my ($path, %args) = @_;
	
	my $caller = caller();
	my $router = $routes{ $caller } ||= Routes::Tiny->new( strict_trailing_slash => 0 );
	return $router->add_route($path, method => 'put', name => $sub, %args );
}


sub patch {
	my $sub = pop;
	my ($path, %args) = @_;
	
	my $caller = caller();
	my $router = $routes{ $caller } ||= Routes::Tiny->new( strict_trailing_slash => 0 );
	return $router->add_route($path, method => 'patch', name => $sub, %args );
}


sub any {
	my $sub = pop;
	my ($methods, $path, %args) = @_;
	
	my $caller = caller();
	my $router = $routes{ $caller } ||= Routes::Tiny->new( strict_trailing_slash => 0 );
	return $router->add_route($path, method => $methods, name => $sub, %args);
}

sub import {
  my $caller = caller;
  
  $caller->add_callback('prerun', \&_routes_prerun);
  goto &Exporter::import;
}



( run in 0.286 second using v1.01-cache-2.11-cpan-a9ef4e587e4 )