Criar fechamentos dinamicamente no Groovy a partir de um objeto String
Eu gostaria de criar uma consulta com a API Criteria in Grails (GORM). A consulta terá que ser algo assim:
MyEntity.createCriteria().list{
assoc{
parent{
eq("code", val)
}
}
}
O que eu preciso é construir o fechamento aninhado dinamicamente a partir de um objeto String. A string para o exemplo acima será"assoc.parent.code"
. Eu dividi o String por ponto (fazendoString.split("\\.")
) mas não sei como construir os fechamentos aninhados:
assoc{
parent{
eq("code", val)
}
}
dinamicamente baseado no array das Strings divididas acima.