summaryrefslogtreecommitdiff
path: root/Mailman/interfaces/database.py
diff options
context:
space:
mode:
authorBarry Warsaw2008-02-19 21:22:20 -0500
committerBarry Warsaw2008-02-19 21:22:20 -0500
commitaab29f252ebefb1520714080a90bb42a25393f18 (patch)
treea5df0c60d606bd3fbe1455d9a6c95be5dd55e6f6 /Mailman/interfaces/database.py
parent2bd332002f241ab7ca77f935a73692f6cbf41fe5 (diff)
downloadmailman-aab29f252ebefb1520714080a90bb42a25393f18.tar.gz
mailman-aab29f252ebefb1520714080a90bb42a25393f18.tar.zst
mailman-aab29f252ebefb1520714080a90bb42a25393f18.zip
Diffstat (limited to 'Mailman/interfaces/database.py')
-rw-r--r--Mailman/interfaces/database.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/Mailman/interfaces/database.py b/Mailman/interfaces/database.py
index 8770839af..c969e9ff5 100644
--- a/Mailman/interfaces/database.py
+++ b/Mailman/interfaces/database.py
@@ -25,6 +25,26 @@ Mailman's back end.
from zope.interface import Interface, Attribute
+from Mailman.Version import DATABASE_SCHEMA_VERSION
+from Mailman.interfaces.errors import MailmanError
+
+
+
+class DatabaseError(MailmanError):
+ """A problem with the database occurred."""
+
+
+class SchemaVersionMismatchError(DatabaseError):
+ """The database schema version number did not match what was expected."""
+
+ def __init__(self, got):
+ self._got = got
+
+ def __str__(self):
+ return (
+ 'Incompatible database schema version (got: %d, expected: %d)'
+ % (self._got, DATABASE_SCHEMA_VERSION))
+
class IDatabase(Interface):