authenticate (lib/merb-auth-core/router_helper.rb)

    # File lib/merb-auth-core/router_helper.rb, line 23
      def authenticate(*strategies, &block)
        p = Proc.new do |request, params|
          if request.session.authenticated?
            params
          else
            if strategies.blank?
              result = request.session.authenticate!(request, params)
            else
              result = request.session.authenticate!(request, params, *strategies)
            end

            if request.session.authentication.halted?
              auth = request.session.authentication
              [auth.status, auth.headers, auth.body]
            else
              params
            end
          end
        end
        defer(p, &block)
      end