class EmailAttribute::List
serializeable model that wraps Mail::AddressList
Attributes
addresses[R]
Public Class Methods
dump(email_address)
click to toggle source
# File lib/email_attribute/list.rb, line 37 def dump(email_address) return nil if email_address.blank? email_address.to_s end
load(email_address)
click to toggle source
# File lib/email_attribute/list.rb, line 43 def load(email_address) new(email_address) end
new(email_addresses)
click to toggle source
# File lib/email_attribute/list.rb, line 7 def initialize(email_addresses) email_addresses = email_addresses.join(", ") if email_addresses.respond_to?(:join) @addresses = begin Mail::AddressList.new(email_addresses).addresses.map(&:format) rescue manual_parse(email_addresses) end end
Public Instance Methods
blank?()
click to toggle source
# File lib/email_attribute/list.rb, line 28 def blank? !present? end
inspect()
click to toggle source
# File lib/email_attribute/list.rb, line 16 def inspect to_s end
present?()
click to toggle source
# File lib/email_attribute/list.rb, line 24 def present? length > 0 end
strip()
click to toggle source
# File lib/email_attribute/list.rb, line 32 def strip to_s.strip end
to_s()
click to toggle source
# File lib/email_attribute/list.rb, line 20 def to_s addresses.join(", ") end
Protected Instance Methods
manual_parse(email_addresses)
click to toggle source
# File lib/email_attribute/list.rb, line 50 def manual_parse(email_addresses) email_addresses.split(/[,;]/).map do |address| Mail::Address.new(address).format rescue address end end