HQL łączy się w Grails: Part Deux

To jest rozszerzenie pytania, które zadałemtutaj

Mam taki związek

class Foo {
    static hasMany = [bars: Bar]
}

class Bar {
    // Has nothing to tie it back to Foo or Thing
}

class Thing {
    static hasMany = [bars: Bar]
}

Mam wystąpienieThing. Chcę uzyskać wszystkie wystąpieniaFoo które są powiązane ze wszystkimi instancjamiBar które są powiązane z instancjąThing że mam.

Czy to, co chcę, jest możliwe dzięki HQL (czy HQL jest w jakiś sposób świadomy pośredniego związku międzyThing iFoo)?

AKTUALIZACJA:

Oto obraz możliwego związku.

Jeśli miałbymThing1 i chciałem wszystkich wystąpieńFoo które są pośrednio z nim związane przezBar wtedy rozwiązanie, którego potrzebuję, powróciFoo1 iFoo2