+++ /dev/null
-# All plugins should include this module. It defines the basic
-# operations that all plugins are supposed to support.
-module Plugin
-
- def Plugin.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 Plugin.includers
- return @includers
- end
-
- def describe_domain(domain)
- # Provide a "description" of the domain. This is output along
- # with the domain name and can be anything of use to the system
- # administrator.
- raise NotImplementedError
- end
-
- def describe_account(account)
- # Provide a "description" of the account. This is output along
- # with the domain name and can be anything of use to the system
- # administrator.
- raise NotImplementedError
- end
-
- def delete_domain(domain)
- # Delete the given domain.
- raise NotImplementedError
- end
-
- def delete_account(account)
- # Delete the given account.
- raise NotImplementedError
- 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