sobjects/ldapparser.py
changeset 10089 6346f53c85f1
parent 9879 21278eb03bbf
child 10662 10942ed172de
equal deleted inserted replaced
10088:ac63f7ec5af0 10089:6346f53c85f1
    68                                                         source.group_base_scope,
    68                                                         source.group_base_scope,
    69                                                         self.searchgroupfilterstr,
    69                                                         self.searchgroupfilterstr,
    70                                                         attrs))
    70                                                         attrs))
    71         return {}
    71         return {}
    72 
    72 
    73     def _process(self, etype, sdict):
    73     def _process(self, etype, sdict, raise_on_error=False):
    74         self.debug('fetched %s %s', etype, sdict)
    74         self.debug('fetched %s %s', etype, sdict)
    75         extid = sdict['dn']
    75         extid = sdict['dn']
    76         entity = self.extid2entity(extid, etype, **sdict)
    76         entity = self.extid2entity(extid, etype,
       
    77                                    raise_on_error=raise_on_error, **sdict)
    77         if entity is not None and not self.created_during_pull(entity):
    78         if entity is not None and not self.created_during_pull(entity):
    78             self.notify_updated(entity)
    79             self.notify_updated(entity)
    79             attrs = self.ldap2cwattrs(sdict, etype)
    80             attrs = self.ldap2cwattrs(sdict, etype)
    80             self.update_if_necessary(entity, attrs)
    81             self.update_if_necessary(entity, attrs)
    81             if etype == 'CWUser':
    82             if etype == 'CWUser':
    88         self.debug('processing ldapfeed source %s %s', self.source, self.searchfilterstr)
    89         self.debug('processing ldapfeed source %s %s', self.source, self.searchfilterstr)
    89         for userdict in self.user_source_entities_by_extid.itervalues():
    90         for userdict in self.user_source_entities_by_extid.itervalues():
    90             self._process('CWUser', userdict)
    91             self._process('CWUser', userdict)
    91         self.debug('processing ldapfeed source %s %s', self.source, self.searchgroupfilterstr)
    92         self.debug('processing ldapfeed source %s %s', self.source, self.searchgroupfilterstr)
    92         for groupdict in self.group_source_entities_by_extid.itervalues():
    93         for groupdict in self.group_source_entities_by_extid.itervalues():
    93             self._process('CWGroup', groupdict)
    94             self._process('CWGroup', groupdict, raise_on_error=raise_on_error)
    94 
    95 
    95     def handle_deletion(self, config, cnx, myuris):
    96     def handle_deletion(self, config, cnx, myuris):
    96         if config['delete-entities']:
    97         if config['delete-entities']:
    97             super(DataFeedLDAPAdapter, self).handle_deletion(config, cnx, myuris)
    98             super(DataFeedLDAPAdapter, self).handle_deletion(config, cnx, myuris)
    98             return
    99             return