Class: EmailRepair::Mechanic
- Inherits:
-
Object
- Object
- EmailRepair::Mechanic
show all
- Defined in:
- lib/email_repair/mechanic.rb
Defined Under Namespace
Classes: CommonDomainAtAdder, CommonDomainPeriodAdder, CommonDomainRepair, CommonDomainSuffixRepair, CommonDomainSwapRepair, CommonMistakeRepair, EmailRegexRepair
Instance Method Summary
collapse
Instance Method Details
#repair(email) ⇒ Object
36
37
38
39
40
|
# File 'lib/email_repair/mechanic.rb', line 36
def repair(email)
return unless email
repairs.reduce(email) { |memo, repair| repair.repair(memo) }
end
|
#repair_all(emails) ⇒ Object
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# File 'lib/email_repair/mechanic.rb', line 14
def repair_all(emails)
emails = emails.reject(&:nil?).map(&:strip).reject { |email| email == '' }
sanitized_emails = []
invalid_emails = []
emails.each do |email|
repaired_email = repair(email)
if repaired_email
sanitized_emails << repaired_email
else
invalid_emails << email
end
end
OpenStruct.new(
sanitized_emails: sanitized_emails.uniq,
invalid_emails: invalid_emails.uniq,
)
end
|