Class: Philiprehberger::EmailValidator::Configuration
- Inherits:
-
Object
- Object
- Philiprehberger::EmailValidator::Configuration
- Defined in:
- lib/philiprehberger/email_validator/configuration.rb
Overview
Mutable configuration for the email validator.
Allows customizing the disposable domain list at runtime.
Instance Attribute Summary collapse
-
#added_disposable_domains ⇒ Set<String>
readonly
Custom domains added to the disposable list.
-
#removed_disposable_domains ⇒ Set<String>
readonly
Domains removed from the built-in disposable list.
Instance Method Summary collapse
-
#add_disposable_domains(domains) ⇒ void
Add domains to the disposable list.
-
#effective_disposable_domains ⇒ Set<String>
Return the effective set of disposable domains.
-
#initialize ⇒ Configuration
constructor
A new instance of Configuration.
-
#remove_disposable_domains(domains) ⇒ void
Remove domains from the disposable list.
Constructor Details
#initialize ⇒ Configuration
Returns a new instance of Configuration.
21 22 23 24 |
# File 'lib/philiprehberger/email_validator/configuration.rb', line 21 def initialize @added_disposable_domains = Set.new @removed_disposable_domains = Set.new end |
Instance Attribute Details
#added_disposable_domains ⇒ Set<String> (readonly)
Returns custom domains added to the disposable list.
16 17 18 |
# File 'lib/philiprehberger/email_validator/configuration.rb', line 16 def added_disposable_domains @added_disposable_domains end |
#removed_disposable_domains ⇒ Set<String> (readonly)
Returns domains removed from the built-in disposable list.
19 20 21 |
# File 'lib/philiprehberger/email_validator/configuration.rb', line 19 def removed_disposable_domains @removed_disposable_domains end |
Instance Method Details
#add_disposable_domains(domains) ⇒ void
This method returns an undefined value.
Add domains to the disposable list.
30 31 32 |
# File 'lib/philiprehberger/email_validator/configuration.rb', line 30 def add_disposable_domains(domains) domains.each { |d| @added_disposable_domains.add(d.downcase) } end |
#effective_disposable_domains ⇒ Set<String>
Return the effective set of disposable domains.
45 46 47 |
# File 'lib/philiprehberger/email_validator/configuration.rb', line 45 def effective_disposable_domains (Disposable::DOMAINS | @added_disposable_domains) - @removed_disposable_domains end |
#remove_disposable_domains(domains) ⇒ void
This method returns an undefined value.
Remove domains from the disposable list.
38 39 40 |
# File 'lib/philiprehberger/email_validator/configuration.rb', line 38 def remove_disposable_domains(domains) domains.each { |d| @removed_disposable_domains.add(d.downcase) } end |