X-Git-Url: http://gitweb.michael.orlitzky.com/?p=mailshears.git;a=blobdiff_plain;f=lib%2Frm%2Frm_plugin.rb;h=49c340f7988f1fc75d1243de6d437795be0ac365;hp=cad493d9f85c95ae8a3c79bee121e59c508a8efb;hb=483d14dc8228a81d12fb109d3ed6510e2d2b03c1;hpb=e7fa62fc599b7583102fe48fbaad3db4f911a6da diff --git a/lib/rm/rm_plugin.rb b/lib/rm/rm_plugin.rb index cad493d..49c340f 100644 --- a/lib/rm/rm_plugin.rb +++ b/lib/rm/rm_plugin.rb @@ -16,8 +16,16 @@ module RmPlugin end def delete_domain(domain) - # Delete the given domain. - raise NotImplementedError + # Delete the given domain. Some plugins don't have a concept of + # domains, so just delete all users with a username that looks + # like it's in the given domain. + usernames = list_domains_users([domain]) + + raise NonexistentDomainError.new(domain) if usernames.empty? + + usernames.each do |u| + delete_account(u) + end end def delete_account(account) @@ -25,11 +33,4 @@ module RmPlugin raise NotImplementedError end - def get_domain_usernames(domain) - # Get a list of usernames for a given domain, - # needed to delete accounts before removing - # a domain. - raise NotImplementedError - end - end