First version of a CatchallAlias class
I based the CatchallAlias class in catchall.py heavily on the Alias class, but
by copy, not deriving. The two are functionally related, but the
implementations are too different because CatchallAliases have no localpart.
# -*- coding: UTF-8 -*-# Copyright (c) 2007 - 2011, Pascal Volk# See COPYING for distribution information.""" VirtualMailManager.errors ~~~~~~~~~~~~~~~~~~~~~~~~~ VMM's Exception classes"""classVMMError(Exception):"""Exception base class for VirtualMailManager exceptions"""def__init__(self,msg,code):Exception.__init__(self,msg)self.msg=msgself.code=int(code)def__repr__(self):return'%s(%r, %r)'%(self.__class__.__name__,self.msg,self.code)classConfigError(VMMError):"""Exception class for configuration exceptions"""passclassPermissionError(VMMError):"""Exception class for permissions exceptions"""passclassNotRootError(VMMError):"""Exception class for non-root exceptions"""passclassDomainError(VMMError):"""Exception class for Domain exceptions"""passclassAliasDomainError(VMMError):"""Exception class for AliasDomain exceptions"""passclassAccountError(VMMError):"""Exception class for Account exceptions"""passclassAliasError(VMMError):"""Exception class for Alias exceptions"""passclassEmailAddressError(VMMError):"""Exception class for EmailAddress exceptions"""passclassMailLocationError(VMMError):"""Exception class for MailLocation exceptions"""passclassRelocatedError(VMMError):"""Exception class for Relocated exceptions"""pass