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.
#
+ 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