VirtualMailManager/domain.py
changeset 615 5882bfdf83e8
parent 611 8e9b0046bc8f
child 637 ca6621caff2f
child 675 d24f094d1cb5
--- a/VirtualMailManager/domain.py	Sun Sep 16 17:05:33 2012 +0000
+++ b/VirtualMailManager/domain.py	Sun Sep 16 17:09:45 2012 +0000
@@ -15,7 +15,9 @@
 from VirtualMailManager.constants import \
      ACCOUNT_AND_ALIAS_PRESENT, DOMAIN_ALIAS_EXISTS, DOMAIN_EXISTS, \
      DOMAIN_INVALID, DOMAIN_TOO_LONG, NO_SUCH_DOMAIN, VMM_ERROR
+from VirtualMailManager.common import validate_transport
 from VirtualMailManager.errors import VMMError, DomainError as DomErr
+from VirtualMailManager.maillocation import MailLocation
 from VirtualMailManager.pycompat import all, any
 from VirtualMailManager.quotalimit import QuotaLimit
 from VirtualMailManager.serviceset import ServiceSet
@@ -247,6 +249,10 @@
         """
         self._chk_state(False)
         assert isinstance(transport, Transport)
+        validate_transport(transport,
+                           MailLocation(self._dbh,
+                                        mbfmt=cfg_dget('mailbox.format'),
+                                        directory=cfg_dget('mailbox.root')))
         self._transport = transport
 
     def set_note(self, note):
@@ -367,6 +373,10 @@
         assert isinstance(transport, Transport)
         if not force and transport == self._transport:
             return
+        validate_transport(transport,
+                           MailLocation(self._dbh,
+                                        mbfmt=cfg_dget('mailbox.format'),
+                                        directory=cfg_dget('mailbox.root')))
         self._update_tables_ref('tid', transport.tid, force)
         self._transport = transport