Class: PasswordBreachAlert::Checker
- Inherits:
-
Object
- Object
- PasswordBreachAlert::Checker
- Defined in:
- lib/password_breach_alert/checker.rb
Instance Attribute Summary collapse
-
#breaches_filter ⇒ Object
readonly
Returns the value of attribute breaches_filter.
-
#breaches_policy ⇒ Object
readonly
Returns the value of attribute breaches_policy.
Class Method Summary collapse
Instance Method Summary collapse
- #call(users) ⇒ Object
-
#initialize(breaches_filter: self.class.default_breaches_filter, breaches_policy: self.class.default_breaches_policy) ⇒ Checker
constructor
A new instance of Checker.
Constructor Details
#initialize(breaches_filter: self.class.default_breaches_filter, breaches_policy: self.class.default_breaches_policy) ⇒ Checker
Returns a new instance of Checker.
17 18 19 20 |
# File 'lib/password_breach_alert/checker.rb', line 17 def initialize(breaches_filter: self.class.default_breaches_filter, breaches_policy: self.class.default_breaches_policy) @breaches_filter = breaches_filter @breaches_policy = breaches_policy end |
Instance Attribute Details
#breaches_filter ⇒ Object (readonly)
Returns the value of attribute breaches_filter.
6 7 8 |
# File 'lib/password_breach_alert/checker.rb', line 6 def breaches_filter @breaches_filter end |
#breaches_policy ⇒ Object (readonly)
Returns the value of attribute breaches_policy.
6 7 8 |
# File 'lib/password_breach_alert/checker.rb', line 6 def breaches_policy @breaches_policy end |
Class Method Details
.default_breaches_filter ⇒ Object
8 9 10 11 |
# File 'lib/password_breach_alert/checker.rb', line 8 def self.default_breaches_filter = Devise..call.reverse_merge(api: PasswordBreachAlert::Api::Breachedaccount.new) Devise.breaches_filter.constantize.new() end |
.default_breaches_policy ⇒ Object
13 14 15 |
# File 'lib/password_breach_alert/checker.rb', line 13 def self.default_breaches_policy Devise.breaches_policy.constantize.new end |
Instance Method Details
#call(users) ⇒ Object
22 23 24 25 26 27 28 29 30 31 |
# File 'lib/password_breach_alert/checker.rb', line 22 def call(users) new_breaches = fetch_and_create_new_breaches breaches = all_breaches users.each do |user| user_breaches = breaches_filter.call(user, new_breaches, breaches) breaches_policy.call(user, user_breaches) end end |