package Ġio . gitlab . art urb os ch . de te kt . core Ċ Ċ import Ġio . gitlab . art urb os ch . de te kt . api . Config Ċ import Ġjava . io . Print Stream Ċ import Ġjava . nio . file . Files Ċ import Ġjava . nio . file . Path Ċ import Ġjava . util . concurrent . ExecutorService Ċ import Ġjava . util . concurrent . Fork Join Pool Ċ Ċ /** Ċ Ġ* ĠSettings Ġto Ġbe Ġused Ġby Ġde te kt . Ċ Ġ* ĠIf Ġusing Ġa Ġcustom Ġexecutor Ġservice Ġbe Ġaware Ġthat Ġde te kt Ġwon 't Ġshut Ġit Ġdown Ġafter Ġuse ! Ċ Ġ* Ċ Ġ* Ġ@ author ĠArt ur ĠB os ch Ċ Ġ* Ġ@ author ĠMar vin ĠR amin Ċ Ġ*/ Ċ @ Suppress (" Long Parameter List ") Ċ data Ġclass ĠProcessing Settings Ġ@ Jvm Over loads Ġconstructor ( ĊĠĠĠ Ġval Ġinput Paths : ĠList < Path >, ĊĠĠĠ Ġval Ġconfig : ĠConfig Ġ= ĠConfig . empty , ĊĠĠĠ Ġval Ġpath Filters : ĠList < Path Filter > Ġ= ĠlistOf (), ĊĠĠĠ Ġval Ġparallel Compilation : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġval Ġexclude Default Rule Sets : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġval Ġplugin Paths : ĠList < Path > Ġ= Ġempty List (), ĊĠĠĠ Ġval ĠexecutorService : ĠExecutor Service Ġ= ĠFork Join Pool . common Pool (), ĊĠĠĠ Ġval Ġout Printer : ĠPrint Stream Ġ= ĠSystem . out , ĊĠĠĠ Ġval Ġerror Printer : ĠPrint Stream Ġ= ĠSystem . err Ċ ) Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSingle Ġproject Ġinput Ġpath Ġconstructor . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġinput Path : ĠPath , ĊĠĠĠĠĠĠĠ Ġconfig : ĠConfig Ġ= ĠConfig . empty , ĊĠĠĠĠĠĠĠ Ġpath Filters : ĠList < Path Filter > Ġ= ĠlistOf (), ĊĠĠĠĠĠĠĠ Ġparallel Compilation : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġexclude Default Rule Sets : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġplugin Paths : ĠList < Path > Ġ= Ġempty List (), ĊĠĠĠĠĠĠĠ ĠexecutorService : ĠExecutor Service Ġ= ĠFork Join Pool . common Pool (), ĊĠĠĠĠĠĠĠ Ġout Printer : ĠPrint Stream Ġ= ĠSystem . out , ĊĠĠĠĠĠĠĠ Ġerror Printer : ĠPrint Stream Ġ= ĠSystem . err ĊĠĠĠ Ġ) Ġ: Ġthis ( ĊĠĠĠĠĠĠĠ ĠlistOf ( input Path ), Ġconfig , Ġpath Filters , Ġparallel Compilation , ĊĠĠĠĠĠĠĠ Ġexclude Default Rule Sets , Ġplugin Paths , ĠexecutorService , Ġout Printer , Ġerror Printer ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġplugin Paths . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequire ( Files . exists ( it )) Ġ{ Ġ" Given Ġplugin ĠâĢĺ $ it âĢĻ Ġdoes Ġnot Ġexist ." Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequire ( it . toString (). endsWith (" jar ")) Ġ{ Ġ" Given Ġplugin ĠâĢĺ $ it âĢĻ Ġis Ġnot Ġa ĠJ AR ." Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġplugin Urls Ġ= Ġplugin Paths . map Ġ{ Ġit . to Uri (). to URL () Ġ}. to Typed Array () ĊĊĠĠĠ Ġfun Ġload Test Pattern () Ġ= Ġcreate Test Pattern ( config ) Ċ } Ċ