I have been struggling with understanding how to use criteria builders. On the very simple scenarios they are straight forward. But how would the following HQL be expressed?
def pkg_query = "select p from Package as p join p.orgs as orgRole where p.packageScope=(:scope) and orgRole.roleType=(:roleType) and orgRole.org=(:provider)"
The first part of the query is easy, but how I access the list?
Package master = c.get {
and {
eq("packageScope",getMasterScope())
//imaginary code, 'and' would probably break it as only 1 match in list
for(orgRole in orgs){
and{
eq(orRole.org,provider)
eq(orgRole.roleType,getCPRole())
}
}
}
}