Merge branch 'master' of charybde.crans.org:/git/ldap
This commit is contained in:
commit
3b09c98c5b
2 changed files with 21 additions and 17 deletions
34
lc_ldap.py
34
lc_ldap.py
|
@ -105,16 +105,16 @@ def ldif_to_uldif(ldif):
|
|||
uldif[attr] = [ unicode(val, 'utf-8') for val in vals ]
|
||||
return uldif
|
||||
|
||||
def ldif_to_cldif(ldif, conn):
|
||||
"""Transforme un dictionnaire renvoyé par python-ldap, en
|
||||
un dictionnaire dont les valeurs sont des instances de Attr
|
||||
Lorsqu'on récupère le ldif de la base ldap, on n'a pas besoin
|
||||
de faire de tests...
|
||||
"""
|
||||
cldif = {}
|
||||
for attr, vals in ldif.items():
|
||||
cldif[attr] = [ attributs.attrify(val, attr, conn, ldif) for val in vals]
|
||||
return cldif
|
||||
#def ldif_to_cldif(ldif, conn):
|
||||
# """Transforme un dictionnaire renvoyé par python-ldap, en
|
||||
# un dictionnaire dont les valeurs sont des instances de Attr
|
||||
# Lorsqu'on récupère le ldif de la base ldap, on n'a pas besoin
|
||||
# de faire de tests...
|
||||
# """
|
||||
# cldif = {}
|
||||
# for attr, vals in ldif.items():
|
||||
# cldif[attr] = [ attributs.attrify(val, attr, conn, ldif) for val in vals]
|
||||
# return cldif
|
||||
|
||||
def cldif_to_ldif(cldif):
|
||||
"""
|
||||
|
@ -324,15 +324,16 @@ class lc_ldap(ldap.ldapobject.LDAPObject, object):
|
|||
--Non implémenté !"""
|
||||
raise NotImplementedError()
|
||||
|
||||
def _create_entity(self, dn, uldif):
|
||||
'''Crée une nouvelle entité ldap en ``dn``, avec attributs ``ldif``:
|
||||
uniquement en unicode'''
|
||||
def _create_entity(self, dn, ldif):
|
||||
'''Crée une nouvelle entité ldap avec le dn ``dn`` et les
|
||||
attributs de ``ldif``. Attention, ldif doit contenir des
|
||||
données encodées.'''
|
||||
# Conversion en cldif pour vérification des valeurs
|
||||
cldif = ldif_to_cldif(uldif, self)
|
||||
cldif = attributs.AttrsDict(self, ldif, Parent=None)
|
||||
# Conversion en ascii
|
||||
ldif = cldif_to_ldif(cldif)
|
||||
data = cldif_to_ldif(cldif)
|
||||
# Renvoi du CransLdapObject
|
||||
return new_cransldapobject(self, dn, 'rw', ldif)
|
||||
return new_cransldapobject(self, dn, 'rw', data)
|
||||
|
||||
def _find_id(self, attr, plage=None):
|
||||
'''Trouve un id libre. Si une plage est fournie, cherche
|
||||
|
@ -489,7 +490,6 @@ class CransLdapObject(object):
|
|||
# est dans la base. On attrify paresseusement au moment où on utilise un attribut
|
||||
|
||||
self._modifs = None # C'est là qu'on met les modifications
|
||||
self._modifs_unchecked = []
|
||||
self.dn = dn
|
||||
|
||||
orig = {}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue