def METHOD_NAME(self, couch_user, cases):
    """Get the combined case hierarchy for a list of cases that spans multiple domains"""
    all_cases = list(itertools.chain.from_iterable(
        self.get_case_hierarchy(domain, couch_user, list(domain_cases))
        for domain, domain_cases in itertools.groupby(cases, key=attrgetter("domain"))
    ))
    return all_cases