]> gitweb.michael.orlitzky.com - mailshears.git/blobdiff - src/plugins/dovecot_mailstore.rb
Get the domain/account descriptions before deleting them.
[mailshears.git] / src / plugins / dovecot_mailstore.rb
index d253c3250bb693c486e8891506983c137a606222..0fffd97cbe378279dadf4d5c1ff988d4f63f8349 100644 (file)
@@ -6,13 +6,18 @@ require 'src/plugin'
 class DovecotMailstore < Mailstore
 
   include Plugin
-  
+
   def initialize
     @domain_root = Configuration::MAIL_ROOT
   end
 
   def describe_domain(domain)
-    return get_domain_path(domain)
+    begin
+      domain_path = get_domain_path(domain)
+      return domain_path
+    rescue NonexistentDomainError => e
+      return "Doesn't Exist"
+    end
   end
 
   def describe_account(account)
@@ -20,7 +25,7 @@ class DovecotMailstore < Mailstore
       account_path = get_account_path(account)
       return account_path
     rescue NonexistentAccountError => e
-      return e.message
+      return "Doesn't Exist"
     end
   end
 
@@ -89,7 +94,7 @@ class DovecotMailstore < Mailstore
     if File.directory?(domain_path)
       return domain_path
     else
-      raise NonexistentDomainError.new(domain_path)
+      raise NonexistentDomainError
     end
   end
 
@@ -105,13 +110,18 @@ class DovecotMailstore < Mailstore
     user_part = account_parts[0]
     domain_part = account_parts[1]
 
-    domain_path = get_domain_path(domain_part)
+    begin
+      domain_path = get_domain_path(domain_part)
+    rescue NonexistentDomainError
+      raise NonexistentAccountError
+    end
+
     account_path = File.join(domain_path, user_part)
 
     if File.directory?(account_path)
       return account_path
     else
-      raise NonexistentAccountError.new(account_path)
+      raise NonexistentAccountError
     end
   end