Class: OmniAuth::ProviderRegistry::RailsMiddlewareSource
- Inherits:
-
Object
- Object
- OmniAuth::ProviderRegistry::RailsMiddlewareSource
- Defined in:
- lib/omniauth/provider_registry/rails_middleware_source.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(middlewares) ⇒ RailsMiddlewareSource
constructor
A new instance of RailsMiddlewareSource.
- #providers ⇒ Object
Constructor Details
#initialize(middlewares) ⇒ RailsMiddlewareSource
Returns a new instance of RailsMiddlewareSource.
10 11 12 |
# File 'lib/omniauth/provider_registry/rails_middleware_source.rb', line 10 def initialize(middlewares) @middlewares = middlewares end |
Class Method Details
.providers ⇒ Object
6 7 8 |
# File 'lib/omniauth/provider_registry/rails_middleware_source.rb', line 6 def self.providers new(Rails.application.config.middleware).providers end |
Instance Method Details
#providers ⇒ Object
14 15 16 17 18 19 20 21 22 |
# File 'lib/omniauth/provider_registry/rails_middleware_source.rb', line 14 def providers builders = @middlewares.select{|m| m === OmniAuth::Builder }.flat_map{|b| b.build(nil).instance_variable_get(:@use) } direct = @middlewares.select{|m| m.klass.is_a?(Class) && m.klass <= OmniAuth::Strategy}.map{|s| ->{ s.build(nil) } } builders + direct end |