package Ġedu . corn ell . cs . apl . n ativ et ools Ċ Ċ import Ġorg . gradle . api . tasks . Input Ċ import Ġorg . gradle . api . tasks . Internal Ċ Ċ data Ġclass ĠLibrary ( ĊĠĠĠ Ġ@ Input ĊĠĠĠ Ġval Ġname : ĠString , ĊĊĠĠĠ Ġ@ Input ĊĠĠĠ Ġval Ġgroup : ĠString , ĊĊĠĠĠ Ġ@ Input ĊĠĠĠ Ġval Ġversion : ĠString , ĊĊĠĠĠ Ġ/** ĠGit Ġrepository ĠURL Ġfor Ġthe Ġlibrary . Ġ*/ ĊĠĠĠ Ġ@ Internal ĊĠĠĠ Ġval Ġurl : ĠString , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠGit Ġsub modules Ġof Ġthe Ġlibrary Ġthat Ġshould Ġalso Ġbe Ġdownloaded . ĠSub modules Ġof Ġsub modules Ġshould Ġbe ĊĠĠĠĠ Ġ* Ġseparated Ġwith Ġa Ġcolon Ġ`: `. ĠFor Ġexample , Ġ` modules / a : external / b : c `. ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Input ĊĠĠĠ Ġval Ġsub modules : ĠIterable < String > Ġ= ĠlistOf (), ĊĊĠĠĠ Ġ/** ĠInclude Ġpaths Ġfor ĠSWIG Ġrelative Ġto Ġlibrary Ġroot . Ġ*/ ĊĠĠĠ Ġ@ Input ĊĠĠĠ Ġval Ġinclude Directories : ĠIterable < String > Ċ ) Ġ{ ĊĠĠĠ Ġ@ get : Internal ĊĠĠĠ Ġval Ġsafe Name : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġname . toLowerCase (). replace ("- ", Ġ"_ ") ĊĊĠĠĠ Ġ@ get : Internal ĊĠĠĠ Ġval ĠpackageName : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġ"$ group .$ safe Name " Ċ } Ċ