Recuperar rotas específicas VRaptor

Seguinte galera, estou pesquisando formas de implementar um interceptor que bloqueia o acesso ao recursos através das rotas.

A idéia é construir uma tela com todas as rotas da aplicação e o administrador habilita ou não o acesso do usuário as rotas.

Porém não sei como recuperar as rotas à partir da requisição (se é que é possível), algo parecido com isso

public class AuthorizationInterceptor implements Interceptor {

	private final RequestInfo request;
	private final UserInfo user;

	public AuthorizationInterceptor(UserInfo user, RequestInfo request) {
		this.request = request;
		this.user = user;
	}

	@Override
	public boolean accepts(ResourceMethod method) {
		return true;
	}

	@Override
	public void intercept(InterceptorStack stack, ResourceMethod method, Object resourceInstance) throws InterceptionException {
	
		for (Route route : getRoutesFrom(request.getRequestedUri())){

			if(user.canAccess(route))
				stack.next(method, resourceInstance);
			
		}
		
	}
	
}

Acho que talvez assim funcione


for(Route route : router.allRoutes()){
/* uma possível rota para a requisição */
if(route.canHandle(request.getRequestedUri())) 			
			
}

}

alguma forma elegante de resolver isso?

você pode fazer isso diretamente pelo ResourceMethod, que representa o método java que será invocado…