diff options
-rw-r--r-- | accounts/backend/user/__init__.py | 16 | ||||
-rw-r--r-- | accounts/backend/user/dummy.py | 8 | ||||
-rw-r--r-- | accounts/backend/user/ldap.py | 5 |
3 files changed, 16 insertions, 13 deletions
diff --git a/accounts/backend/user/__init__.py b/accounts/backend/user/__init__.py index af0cc63..57ba952 100644 --- a/accounts/backend/user/__init__.py +++ b/accounts/backend/user/__init__.py @@ -107,9 +107,15 @@ class Backend(object): def register(self, account): """ - Persists an account in the backend. + Register a new user account. + + This message checks the given account for plausibility, + get a new uidNumber and store the account into the backend. """ - raise NotImplementedError() + if account.password is None: + raise ValueError("Password required for register") + + self._store(account) def update(self, account, as_admin=False): """ @@ -122,3 +128,9 @@ class Backend(object): Deletes an account permanently. """ raise NotImplementedError() + + def _store(self, account): + """ + Persists an account in the backend. + """ + raise NotImplementedError() diff --git a/accounts/backend/user/dummy.py b/accounts/backend/user/dummy.py index cc43dc5..867db2e 100644 --- a/accounts/backend/user/dummy.py +++ b/accounts/backend/user/dummy.py @@ -64,13 +64,7 @@ class DummyBackend(Backend): return results - def register(self, account): - """ - Persists an account in the backend. - """ - if account.password is None: - raise ValueError("Password required for register") - + def _store(self, account): self._storage.append(deepcopy(account)) def update(self, account, as_admin=False): diff --git a/accounts/backend/user/ldap.py b/accounts/backend/user/ldap.py index 6ab02c6..ea1b7fc 100644 --- a/accounts/backend/user/ldap.py +++ b/accounts/backend/user/ldap.py @@ -92,10 +92,7 @@ class LdapBackend(Backend): return accounts - def register(self, account): - """ - Persists an account in the backend. - """ + def _store(self, account): conn = self._connect_as_admin() user_dn = self._format_dn([('uid', account.uid), ('ou', 'users')]) |