/* Ċ Ġ* ĠCopyright Ġ 2 0 1 8 ĠInter shop ĠCom munications ĠAG . Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* Ġ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġcom . inter shop . gradle . component . installation . extension Ċ Ċ import Ġcom . inter shop . gradle . component . installation . utils . Descriptor Manager Ċ import Ġorg . gradle . api . Project Ċ import Ġorg . gradle . api . artifacts . repositories . I vy Artifact Repository Ċ import Ġjava . io . File Ċ import Ġjavax . inject . Inject Ċ Ċ /** Ċ Ġ* ĠThis Ġis Ġthe Ġconfiguration Ġcontainer Ġof Ġthe Ċ Ġ* Ġinstallation Ġprocess Ġof Ġall Ġconfigured Ġcomponents . Ċ Ġ* Ċ Ġ* Ġ@ constructor Ġinitialize Ġthe Ġconfiguration Ġcontainer Ġwith Ċ Ġ* Ġthe Ġspecified Ġproject . Ċ Ġ*/ Ċ open Ġclass ĠInstall Configuration Ġ@ Inject Ġconstructor ( project : ĠProject ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġiv y Pattern Set : ĠMutable Set < String > Ġ= Ġmutable Set Of () ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġiv y Pattern Set . add ( Descriptor Manager . INTER SH OP _ PATTERN ) ĊĠĠĠĠĠĠĠ Ġiv y Pattern Set . add ( Descriptor Manager . INTER SH OP _ IV Y _ PATTERN ) ĊĠĠĠĠĠĠĠ Ġiv y Pattern Set . add ( I vy Artifact Repository . GRAD LE _ AR TI FACT _ PATTERN ) ĊĠĠĠĠĠĠĠ Ġiv y Pattern Set . add ( I vy Artifact Repository . IV Y _ AR TI FACT _ PATTERN ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSpecifies Ġthe Ġadmin Ġinstallation Ġdirectory . ĊĠĠĠĠ Ġ* ĠThe Ġdefault Ġvalue Ġis Ġthe Ġbuild Ġdirectory Ġof Ġthe Ġproject . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ property Ġinstall Admin Dir Ġbase Ġdirectory Ġfor Ġall Ġadmin Ġartifacts . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġinstall Admin Dir : ĠFile Ġ= Ġproject . build Dir ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAdds Ġan Ġadditional Ġiv y Ġpattern Ġfor Ġthe ĊĠĠĠĠ Ġ* Ġdownload Ġof Ġinitial Ġcomponent Ġartifacts . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġpattern Ġadditional ĠIV Y Ġpattern . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġadd I vy Pattern ( pattern : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġiv y Pattern Set . add ( pattern ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAll Ġconfigured ĠIV Y Ġpatterns Ġfor Ġthe ĊĠĠĠĠ Ġ* Ġdownload Ġof Ġinitial Ġcomponent Ġartifacts . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠPer Ġdefault Ġthe ĠINTER SH OP Ġand Ġthe ĠGR AD LE ĊĠĠĠĠ Ġ* ĠIV Y Ġpatterns Ġare Ġconfigured . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ property Ġiv y Patterns Ġset Ġof ĠIV Y Ġpatterns . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġiv y Patterns : ĠSet < String > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġiv y Pattern Set Ċ Ċ } Ċ