VirtualMailManager/cli/Handler.py
branchv0.6.x
changeset 320 011066435e6f
parent 319 f4956b4ceba1
child 321 883d5cd66498
--- a/VirtualMailManager/cli/Handler.py	Wed Jul 28 01:03:56 2010 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,84 +0,0 @@
-# -*- coding: UTF-8 -*-
-# Copyright (c) 2010, Pascal Volk
-# See COPYING for distribution information.
-
-"""
-    VirtualMailManager.cli.Handler
-
-    A derived Handler class with a few changes/additions for cli use.
-"""
-
-import os
-
-from VirtualMailManager.errors import VMMError
-from VirtualMailManager.Handler import Handler
-from VirtualMailManager.cli import read_pass
-from VirtualMailManager.cli.Config import CliConfig as Cfg
-from VirtualMailManager.constants import INVALID_SECTION
-
-_ = lambda msg: msg
-
-
-class CliHandler(Handler):
-    """This class uses a `CliConfig` for configuration stuff, instead of
-    the non-interactive `Config` class.
-
-    It provides the additional methods cfgSet() and configure().
-
-    Additionally it uses `VirtualMailManager.cli.read_pass()` for for the
-    interactive password dialog.
-    """
-
-    __slots__ = ()  # nothing additional, also no __dict__/__weakref__
-
-    def __init__(self):
-        """Creates a new CliHandler instance.
-
-        Throws a NotRootError if your uid is greater 0.
-        """
-        # Overwrite the parent CTor partly, we use the CliConfig class
-        # and add some command line checks.
-        skip_some_checks = os.sys.argv[1] in ('cf', 'configure', 'h', 'help',
-                                              'v', 'version')
-        super(CliHandler, self).__init__(skip_some_checks)
-
-        self._cfg = Cfg(self._cfg_fname)
-        self._cfg.load()
-        if not skip_some_checks:
-            self._cfg.check()
-            self._chkenv()
-
-    def cfg_set(self, option, value):
-        """Set a new value for the given option."""
-        return self._cfg.set(option, value)
-
-    def configure(self, section=None):
-        """Starts the interactive configuration.
-
-        Configures in interactive mode options in the given ``section``.
-        If no section is given (default) all options from all sections
-        will be prompted.
-        """
-        if section is None:
-            self._cfg.configure(self._cfg.sections())
-        elif self._cfg.has_section(section):
-            self._cfg.configure([section])
-        else:
-            raise VMMError(_(u'Invalid section: ā€œ%sā€') % section,
-                           INVALID_SECTION)
-
-    def user_add(self, emailaddress, password=None):
-        """Prefix the parent user_add() with the interactive password
-        dialog."""
-        if password is None:
-            password = read_pass()
-        super(CliHandler, self).user_add(emailaddress, password)
-
-    def user_password(self, emailaddress, password=None):
-        """Prefix the parent user_password() with the interactive password
-        dialog."""
-        if password is None:
-            password = read_pass()
-        super(CliHandler, self).user_password(emailaddress, password)
-
-del _