class ImapFilter::DSL::Account

Attributes

imap[RW]
name[RW]

Public Class Methods

new(name, &block) click to toggle source
Calls superclass method ImapFilter::DSL::Dsl::new
# File lib/imap-filter/dsl.rb, line 61
def initialize(name, &block)
  super
  @name = name
  instance_eval( &block )
  _accounts[name] = self      
end

Public Instance Methods

_close_connection() click to toggle source
# File lib/imap-filter/dsl.rb, line 87
def _close_connection
  imap.close
end
_open_connection() click to toggle source

connects and logs in

# File lib/imap-filter/dsl.rb, line 73
def _open_connection
  print "\n    *** connect #{fqdn} port '#{use_port}' ssl #{use_ssl}".light_cyan unless _options[:verbose] < 2
  unless use_port.nil?
    @imap =  Net::IMAP.new(fqdn, port: use_port, ssl: use_ssl)
  else
    @imap =  Net::IMAP.new(fqdn, ssl: use_ssl)
  end
  @imap.account = self

  print "\n    *** auth #{userid} pass #{pass}...".light_cyan unless _options[:verbose] < 2
  imap.authenticate(auth_type, userid, pass)
  @delim = imap.list('', '').first.delim        
end
auth(type) click to toggle source
# File lib/imap-filter/dsl.rb, line 57
def auth type
  @auth_type = type.to_s.upcase
end
login(userid, password) click to toggle source
# File lib/imap-filter/dsl.rb, line 37
def login userid, password
  @userid = userid
  @pass = password
  @use_ssl = true
  @use_port = nil
  @auth_type = 'PLAIN'
end
port(p) click to toggle source
# File lib/imap-filter/dsl.rb, line 53
def port p
  @use_port = p
end
serv(fqdn) click to toggle source
# File lib/imap-filter/dsl.rb, line 45
def serv fqdn
  @fqdn = fqdn
end
ssl(t) click to toggle source
# File lib/imap-filter/dsl.rb, line 49
def ssl t
  @use_ssl = t
end
to_s() click to toggle source
# File lib/imap-filter/dsl.rb, line 68
def to_s
  "SERV #{fqdn} USER #{userid} SSL #{use_ssl} PORT #{ use_port ? use_port : '<default>'} AUTH #{auth_type} >DELIM #{delim}"
end