server/sources/ldapuser.py
branchstable
changeset 6693 65bd93b72f1e
parent 6653 52d1568af412
child 6724 24bf6f181d0e
child 6750 ef513c03a224
equal deleted inserted replaced
6692:bbc3f7c9f8d9 6693:65bd93b72f1e
   367         assert not rqlst.with_, 'subquery not supported'
   367         assert not rqlst.with_, 'subquery not supported'
   368         rqlkey = rqlst.as_string(kwargs=args)
   368         rqlkey = rqlst.as_string(kwargs=args)
   369         try:
   369         try:
   370             results = self._query_cache[rqlkey]
   370             results = self._query_cache[rqlkey]
   371         except KeyError:
   371         except KeyError:
   372             results = self.rqlst_search(session, rqlst, args)
   372             try:
   373             self._query_cache[rqlkey] = results
   373                 results = self.rqlst_search(session, rqlst, args)
       
   374                 self._query_cache[rqlkey] = results
       
   375             except ldap.SERVER_DOWN:
       
   376                 # cant connect to server
       
   377                 msg = session._("can't connect to source %s, some data may be missing")
       
   378                 session.set_shared_data('sources_error', msg % self.uri)
       
   379                 return []
   374         return results
   380         return results
   375 
   381 
   376     def rqlst_search(self, session, rqlst, args):
   382     def rqlst_search(self, session, rqlst, args):
   377         mainvars = []
   383         mainvars = []
   378         for varname in rqlst.defined_vars:
   384         for varname in rqlst.defined_vars: