Clarification de l'erreur "λv. str(Attr(v)) non projection"

This commit is contained in:
Vincent Le Gallic 2012-11-28 18:29:10 +01:00
parent aec6088f00
commit 9cba9ca0cd

View file

@ -341,6 +341,7 @@ class CransLdapObject(object):
self.attrs = ldif_to_cldif(self.attrs, conn, check_ctxt = False)
if mode in ['w', 'rw']:
### Vérification que `λv. str(Attr(v))` est bien une projection
### C'est-à-dire que si on str(Attr(str(Attr(v)))) on retombe sur str(Attr(v))
oldif = res[0][1]
nldif = cldif_to_ldif(self.attrs)
@ -350,7 +351,7 @@ class CransLdapObject(object):
if v in vals:
vals.remove(v)
nvals = [nldif[attr][v.index(v)] for v in vals ]
raise EnvironmentError("λv. str(Attr(v)) n'est peut-être pas une projection:", attr, nvals, vals)
raise EnvironmentError("λv. str(Attr(v)) n'est peut-être pas une projection (ie non idempotente):", attr, nvals, vals)
self._modifs = ldif_to_cldif(ldif_to_uldif(res[0][1]), conn, check_ctxt = False)