Thank you gentlemen, you've been a great help. This does exactly what I need:
<code> response.data.each { owner -> owner.children.each { dealer -> dealer.children.each { location -> location.children.each { grower -> println([grower.type, grower.profile_id, grower.name, grower.created, grower.modified, "", ""].join("|")) grower.children.each { farm -> println([farm.type, farm.farm_id, farm.name, farm.created, farm.modified, grower.profile_id, ""].join("|")) farm.children.each { field -> println([field.type, field.field_id, field.name, field.created, field.modified, grower.profile_id, farm.farm_id].join("|"))}}}}}} </code> On Mon, Jun 15, 2015 at 8:32 AM David Clark <plotinussm...@gmail.com> wrote: > Yes. My mistake, thank you for the correction. > > > On 06/15/2015 04:43 AM, Dinko Srkoč wrote: > > One should be careful about those nested its where explicit Closure > parameters are used: > > response.data.each { it.children.each { it.children.each { > // scope X here > it.children.each { grower -> > println ... > // it.children.each { farm -> ... 'it' comes from scope X > grower.children.each { farm -> // ok > println ... > // it.children.each { field -> ... 'it' is still from scope X > farm.children.each { field -> // ok > println ... > } > } > } > }}} > > Cheers, > Dinko > > > On 15 June 2015 at 07:19, David Clark <plotinussm...@gmail.com> wrote: > >> Try something like this: >> >> response.data.each { >> it.children.each { >> it.children.each { >> it.children.each { grower -> println([grower.type, >> grower.profile_id, grower.name <http://it.name>, grower.created, >> grower.modified, "", ""].join("|")) >> it.children.each { farm -> println([farm.type, >> farm.farm_id, farm.name <http://it.name>, farm.created, farm.modified, >> grower.profile_id, ""].join("|")) >> it.children.each { field -> println([field.type, >> field.field_id, field.name <http://it.name>, field.created, field.modified, >> grower.profile_id, farm.farm_id].join("|")) } } } } } } >> >> Moving the brackets is optional, it just hurts my eyes to see all of >> those dangling angle brackets each on a line by itself. >> >> >> On 06/14/2015 11:45 PM, Kurt Andrews wrote: >> >> I'm trying to figure out how to pass an extra parameter to the closure >> that's being passed to each in the following code >> >> response.data.each { >> it.children.each { >> it.children.each { >> it.children.each { // growers println([it.type, it.profile_id, >> it.name, it.created, it.modified, "", ""].join("|")) >> it.children.each { // farms println([it.type, it.farm_id, >> it.name, it.created, it.modified, grower.profile_id, ""].join("|")) >> it.children.each { // fields println([it.type, >> it.field_id, it.name, it.created, it.modified, grower.profile_id, >> farm.farm_id].join("|")) >> } >> } >> } >> } >> } >> } >> >> I'm trying to pass the grower profile_id down to the farms and the >> fields and pass the farms farm_id down to fields. Is there a simple way >> to do this? >> >> Thanks, >> >> Kurt >> >> >> > >