Class: Certmeister::Policy::ChainAny

Inherits:
Object
  • Object
show all
Defined in:
lib/certmeister/policy/chain_any.rb

Instance Method Summary collapse

Constructor Details

#initialize(policies) ⇒ ChainAny

Returns a new instance of ChainAny.



9
10
11
12
# File 'lib/certmeister/policy/chain_any.rb', line 9

def initialize(policies)
  Certmeister::Policy.validate_policies(policies)
  @policies = policies
end

Instance Method Details

#authenticate(request) ⇒ Object



14
15
16
17
18
19
20
# File 'lib/certmeister/policy/chain_any.rb', line 14

def authenticate(request)
  @policies.inject(nil) do |continue, policy|
    response = policy.authenticate(request)
    break response if response.authenticated?
    continue or response
  end
end