]> gitweb.michael.orlitzky.com - mailshears.git/blobdiff - src/dovecot_mailstore.rb
Added some more virtual function definitions to the Mailstore class.
[mailshears.git] / src / dovecot_mailstore.rb
index 187b6b0dbfad083f5533b86916c099997d29a948..81eb167ed4c56a540aeb48f8a3b11385f891becc 100644 (file)
@@ -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