class MailFetcher::Client
Attributes
account[RW]
clean_inbox[RW]
client_id[RW]
client_secret[RW]
host[RW]
logger[RW]
max_wait_time[RW]
port[RW]
refresh_token[RW]
server_type[RW]
Public Class Methods
configure() { |self| ... }
click to toggle source
# File lib/mail_fetcher/client.rb, line 10 def configure self.max_wait_time = 30 self.clean_inbox = false yield self if debug_mode && !self.logger self.logger = self.create_default_logger end end
find(*args)
click to toggle source
# File lib/mail_fetcher/client.rb, line 19 def find(*args) client.find(*args) end
Protected Class Methods
client()
click to toggle source
# File lib/mail_fetcher/client.rb, line 25 def client @client ||= create_client end
Private Class Methods
create_client()
click to toggle source
# File lib/mail_fetcher/client.rb, line 31 def create_client case self.server_type when :mail_catcher _client = MailCatcherClient.new(host, port, clean_inbox = clean_inbox) when :gmail _client = GmailClient.new(account, client_id, client_secret, refresh_token) else raise InvalidArgument.new('Unsupported server type') end _client.logger = logger _client end
create_default_logger()
click to toggle source
# File lib/mail_fetcher/client.rb, line 48 def create_default_logger _logger = Logger.new(STDOUT) _logger.level = Logger::DEBUG _logger.formatter = proc do |severity, datetime, progname, msg| "[#{severity}][#{datetime}] - #{msg}\n" end _logger.datetime_format = '%Y-%m-%d %H:%M:%S' _logger end
debug_mode()
click to toggle source
# File lib/mail_fetcher/client.rb, line 44 def debug_mode YAML.load(ENV.fetch('DEBUG', 'false')) end