def setup_phase
      if options[:setup].respond_to?(:call)
        log :info, 'Setup endpoint detected, running now.'
        options[:setup].call(env)
      elsif options[:setup]
        log :info, 'Calling through to underlying application for setup.'
        setup_env = env.merge('PATH_INFO' => setup_path, 'REQUEST_METHOD' => 'GET')
        call_app!(setup_env)
      end
    end
def setup_phase
      if options[:setup].respond_to?(:call)
        log :info, 'Setup endpoint detected, running now.'
        options[:setup].call(env)
      elsif options[:setup]
        log :info, 'Calling through to underlying application for setup.'
        setup_env = env.merge('PATH_INFO' => setup_path, 'REQUEST_METHOD' => 'GET')
        call_app!(setup_env)
      end
    end
def setup_phase if options [ :setup ] . respond_to? ( :call ) log :info , 'Setup endpoint detected, running now.' options [ :setup ] . call ( env ) elsif options [ :setup ] log :info , 'Calling through to underlying application for setup.' setup_env = env . merge ( 'PATH_INFO' => setup_path , 'REQUEST_METHOD' => 'GET' ) call_app! ( setup_env ) end end
The setup phase looks for the `:setup` option to exist and,
 if it is, will call either the Rack endpoint supplied to the
 `:setup` option or it will call out to the setup path of the
 underlying application. This will default to `/auth/:provider/setup`.
The setup phase looks for the : setup option to exist and if it is will call either the Rack endpoint supplied to the : setup option or it will call out to the setup path of the underlying application . This will default to / auth / : provider / setup .