package Ġcom . p abl isco . gradle . autom odule Ċ Ċ import Ġcom . p abl isco . gradle . autom odule . file tree . File Tree Scope Ċ Ċ open Ġclass ĠAuto Module ( ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġbuild Modules Root : ĠString Ġ= Ġ" gradle " Ċ ) Ġ{ ĊĊĠĠĠ Ġinternal Ġval Ġignored : ĠMutable List < String > Ġ= Ġmutable ListOf () ĊĠĠĠ Ġinternal Ġval Ġtemplates : ĠMutable List < Auto Module Template > Ġ= Ġmutable ListOf () ĊĠĠĠ Ġinternal Ġvar Ġplugin Repository Path : ĠString ? Ġ= Ġnull ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUsed , Ġin Ġdevelopment , Ġto Ġadd Ġa Ġrepository Ġto Ġthe Ġgenerated Ġcode Ġto Ġlook Ġfor Ġitself . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Suppress (" unused ") Ġ// ĠApi ĊĠĠĠ Ġfun Ġplugin Repository ( repository Path : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġplugin Repository Path Ġ= Ġrepository Path ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAdds Ġthe Ġ** absolute ** Ġpath Ġto Ġany Ġmodule Ġthat Ġwe Ġwant Ġto Ġignore . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ see Ġ[ ignored ] ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Suppress (" unused ") Ġ// ĠApi ĊĠĠĠ Ġfun Ġignore ( var arg Ġmodules : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġignored Ġ+= Ġmodules ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAdd Ġa Ġnew Ġtemplate Ġto Ġgenerate Ġa Ġtask Ġwith Ġthe Ġname Ġ` create { Name } Module ` Ġthat Ġcan Ġbe Ġused ĊĠĠĠĠ Ġ* Ġto Ġcreate Ġnew Ġmodule ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġtype ĠThe Ġtype Ġfor Ġthe Ġmodules Ġgenerated Ġby Ġthis Ġtemplate ĊĠĠĠĠ Ġ* Ġ@ param Ġpath ĠOptional Ġpath Ġfor Ġwhere Ġto Ġcreate Ġthe Ġmodules ĊĠĠĠĠ Ġ* Ġ@ param Ġfiles ĠLambda Ġin Ġcharge Ġof Ġcreating Ġthe Ġfiles Ġfor Ġthe Ġcreated Ġmodule ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Suppress (" unused ") Ġ// ĠApi ĊĠĠĠ Ġfun Ġtemplate ( type : ĠString , Ġpath : ĠString ? Ġ= Ġnull , Ġfiles : ĠFile Tree Scope . () Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtemplates Ġ+= ĠAuto Module Template ( type , Ġpath , Ġfiles ) ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ internal Ġdata Ġclass ĠAuto Module Template ( ĊĠĠĠ Ġval Ġname : ĠString , ĊĠĠĠ Ġval Ġpath : ĠString ?, ĊĠĠĠ Ġval Ġfiles : ĠApply Template Scope . () Ġ-> ĠUnit Ċ ) Ċ