--- /dev/null
+require 'rm/rm_plugin'
+
+module PrunePlugin
+ include RmPlugin
+
+ #
+ # Plugins for the removal of leftover non-PostfixAdmin accounts,
+ # i.e. after an account has been removed from the PostfixAdmin
+ # database.
+ #
+
+ 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
+ end
+
+ def PrunePlugin.includers
+ return @includers
+ 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
+ end
+
+ def get_leftover_accounts(db_accounts)
+ # Given a list of accounts, determine which accounts belonging to
+ # this plugin are not contained in the given list.
+ raise NotImplementedError
+ end
+end