def rm(self, domains, force=False): do = Domain(self.dburi, self.db) da = Domain_attrs(self.dburi, self.db) ur = Uri(self.dburi, self.db) cr = Cred(self.dburi, self.db) domains = uniq(domains) doms = [] for d in domains: try: did = do.get_did(d) except: if not force: raise Error (ENODOMAIN, d) doms.append((did, d)) for i, d in doms: try: ur.rm_did(i, force=force) except: pass try: cr.rm_realm(d, force=force) except: pass do.rm(i, d, force=force) do.purge() ur.purge() cr.purge() da.purge() self._reload()