summaryrefslogtreecommitdiff
path: root/src/mailman/database
diff options
context:
space:
mode:
authorBarry Warsaw2009-09-19 16:51:15 -0400
committerBarry Warsaw2009-09-19 16:51:15 -0400
commita5456442682ff20c4b0d3a9d166d5fa9bf06a7de (patch)
tree7ad2aec53b1acc53d879e063ef7339c2302284c7 /src/mailman/database
parentca84b1a8852a86464184586441c3d0fd66c879b1 (diff)
downloadmailman-a5456442682ff20c4b0d3a9d166d5fa9bf06a7de.tar.gz
mailman-a5456442682ff20c4b0d3a9d166d5fa9bf06a7de.tar.zst
mailman-a5456442682ff20c4b0d3a9d166d5fa9bf06a7de.zip
Convert bin/inject to bin/mailman inject
Expose the database store on .store instead of ._store A few other cleanups.
Diffstat (limited to 'src/mailman/database')
-rw-r--r--src/mailman/database/__init__.py2
-rw-r--r--src/mailman/database/listmanager.py7
-rw-r--r--src/mailman/database/mailinglist.py3
3 files changed, 8 insertions, 4 deletions
diff --git a/src/mailman/database/__init__.py b/src/mailman/database/__init__.py
index 6e1ae46bb..748378ca7 100644
--- a/src/mailman/database/__init__.py
+++ b/src/mailman/database/__init__.py
@@ -54,7 +54,7 @@ class StockDatabase:
def __init__(self):
self.url = None
- self._store = None
+ self.store = None
def initialize(self, debug=None):
"""See `IDatabase`."""
diff --git a/src/mailman/database/listmanager.py b/src/mailman/database/listmanager.py
index 157f4660c..929f00351 100644
--- a/src/mailman/database/listmanager.py
+++ b/src/mailman/database/listmanager.py
@@ -30,6 +30,7 @@ import datetime
from zope.interface import implements
from mailman.config import config
+from mailman.core.errors import InvalidEmailAddress
from mailman.database.mailinglist import MailingList
from mailman.interfaces.listmanager import IListManager, ListAlreadyExistsError
from mailman.interfaces.rest import IResolvePathNames
@@ -44,7 +45,9 @@ class ListManager:
# pylint: disable-msg=R0201
def create(self, fqdn_listname):
"""See `IListManager`."""
- listname, hostname = fqdn_listname.split('@', 1)
+ listname, at, hostname = fqdn_listname.partition('@')
+ if len(hostname) == 0:
+ raise InvalidEmailAddress(fqdn_listname)
mlist = config.db.store.find(
MailingList,
MailingList.list_name == listname,
@@ -58,7 +61,7 @@ class ListManager:
def get(self, fqdn_listname):
"""See `IListManager`."""
- listname, hostname = fqdn_listname.split('@', 1)
+ listname, at, hostname = fqdn_listname.partition('@')
mlist = config.db.store.find(MailingList,
list_name=listname,
host_name=hostname).one()
diff --git a/src/mailman/database/mailinglist.py b/src/mailman/database/mailinglist.py
index 5384e9895..447d4657a 100644
--- a/src/mailman/database/mailinglist.py
+++ b/src/mailman/database/mailinglist.py
@@ -178,7 +178,8 @@ class MailingList(Model):
def __init__(self, fqdn_listname):
super(MailingList, self).__init__()
- listname, hostname = fqdn_listname.split('@', 1)
+ listname, at, hostname = fqdn_listname.partition('@')
+ assert hostname, 'Bad list name: {0}'.format(fqdn_listname)
self.list_name = listname
self.host_name = hostname
# For the pending database