X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=src%2Fdovecot_mailstore.rb;h=81eb167ed4c56a540aeb48f8a3b11385f891becc;hb=dbeb9a88947d70d87cca3f9d25d786d6281a31df;hp=187b6b0dbfad083f5533b86916c099997d29a948;hpb=da71911046617ccffbb899b57162c5e6bdbb37ee;p=mailshears.git diff --git a/src/dovecot_mailstore.rb b/src/dovecot_mailstore.rb index 187b6b0..81eb167 100644 --- a/src/dovecot_mailstore.rb +++ b/src/dovecot_mailstore.rb @@ -3,21 +3,30 @@ require 'src/mailstore' class DovecotMailstore < Mailstore - def get_accounts_from_filesystem() + def get_domains_from_filesystem() + return Filesystem.get_subdirs(@domain_root) + end + + + def get_accounts_from_filesystem(domains) accounts = [] - - domains = Filesystem.get_subdirs(@domain_root) - + domains.each do |domain| domain_path = File.join(@domain_root, domain) - usernames = Filesystem.get_subdirs(domain_path) - - usernames.each do |username| - accounts << "#{username}@#{domain}" + + if File.directory?(domain_path) + # If domain_path isn't a directory, maybe the + # domain folder doesn't exist? In that case, I + # guess we want to report zero accounts. + usernames = Filesystem.get_subdirs(domain_path) + + usernames.each do |username| + accounts << "#{username}@#{domain}" + end end end return accounts end - + end