X-Git-Url: http://gitweb.michael.orlitzky.com/?p=mailshears.git;a=blobdiff_plain;f=lib%2Fprune%2Fprune_plugin.rb;h=1046f2d0b29c575a8a4ecfc8c51a54f1e609e6ad;hp=e47a5e4aafbd6370fcf07aca76e30b8804fa34c0;hb=9c2503578bcb8141d13bf4a5af1ef460c70fd219;hpb=72696d3f6e95ef773af9727e9c3459b9038b0fc2 diff --git a/lib/prune/prune_plugin.rb b/lib/prune/prune_plugin.rb index e47a5e4..1046f2d 100644 --- a/lib/prune/prune_plugin.rb +++ b/lib/prune/prune_plugin.rb @@ -1,35 +1,35 @@ require 'rm/rm_plugin' module PrunePlugin - include RmPlugin - # # Plugins for the removal of leftover non-PostfixAdmin users, # i.e. after an user has been removed from the PostfixAdmin # database. # + include RmPlugin + extend Plugin::Run - def PrunePlugin.included(c) - # Callback, called whenever another class or module includes this - # one. The parameter given is the name of the class or module - # that included us. - @includers ||= [] - @includers << c + def self.runner() + return PruneRunner end - def PrunePlugin.includers - return @includers + def self.dummy_runner + return PruneDummyRunner end def get_leftover_domains(db_domains) # Given a list of domains, determine which domains belonging to # this plugin are not contained in the given list. - raise NotImplementedError + + # WARNING! Array difference doesn't work for some reason. + return list_domains().select{ |d| !db_domains.include?(d) } end def get_leftover_users(db_users) # Given a list of users, determine which users belonging to # this plugin are not contained in the given list. - raise NotImplementedError + + # WARNING! Array difference doesn't work for some reason. + return list_users().select{ |u| !db_users.include?(u) } end end