package Ġcom . lik et hes al ad . android . buddy Ċ Ċ import Ġcom . android . build . gradle . Base Extension Ċ import Ġcom . lik et hes al ad . android . buddy . di . App Injector Ċ import Ġcom . lik et hes al ad . android . buddy . extension . Android Bu ddy Extension Ċ import Ġcom . lik et hes al ad . android . buddy . providers . Android Bu ddy Extension Provider Ċ import Ġcom . lik et hes al ad . android . buddy . providers . File Tree Iterator Provider Ċ import Ġcom . lik et hes al ad . android . buddy . providers . Gradle Configurations Provider Ċ import Ġcom . lik et hes al ad . android . common . base . Bu ddy Plugin Ċ import Ġorg . gradle . api . Plugin Ċ import Ġorg . gradle . api . Project Ċ import Ġorg . gradle . api . artifacts . Configuration Container Ċ import Ġorg . gradle . api . artifacts . dsl . Dependency Handler Ċ import Ġorg . gradle . api . artifacts . dsl . Repository Handler Ċ import Ġorg . gradle . api . logging . Logger Ċ import Ġjava . io . File Ċ Ċ @ Suppress (" Un stable Api Usage ") Ċ open Ġclass ĠAndroid Bu ddy Plugin Ġ: ĠPlugin < Project >, ĠBu ddy Plugin , ĠFile Tree Iterator Provider , ĊĠĠĠ ĠGradle Configurations Provider , ĠAndroid Bu ddy Extension Provider Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġproject : ĠProject ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġandroid Extension : ĠBase Extension ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġandroid Bu ddy Extension : ĠAndroid Bu ddy Extension ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠEXT ENSION _ NAME Ġ= Ġ" android Bu ddy " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġapply ( project : ĠProject ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . project Ġ= Ġproject ĊĠĠĠĠĠĠĠ Ġandroid Bu ddy Extension Ġ= Ġproject . extensions . create ( EXTENSION _ NAME , ĠAndroid Bu ddy Extension :: class . java ) ĊĠĠĠĠĠĠĠ Ġandroid Extension Ġ= Ġproject . extensions . getBy Type ( Base Extension :: class . java ) ĊĠĠĠĠĠĠĠ ĠApp Injector . init ( this ) ĊĠĠĠĠĠĠĠ ĠApp Injector . get Dependency Handler Util (). add Dependencies () ĊĊĠĠĠĠĠĠĠ Ġandroid Extension . register Transform ( App Injector . getByte Bu ddy Transform ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcreate File Tree Iterator ( folder : ĠFile ): ĠIterator < File > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġproject . file Tree ( folder ). iterator () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Logger (): ĠLogger Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġproject . logger ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Dependency Handler (): ĠDependency Handler Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġproject . dependencies ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Repository Handler (): ĠRepository Handler Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġproject . repositories ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Android Extension (): ĠBase Extension Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġandroid Extension ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Configuration Container (): ĠConfiguration Container Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġproject . configurations ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Android Bu ddy Extension (): ĠAndroid Bu ddy Extension Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġandroid Bu ddy Extension ĊĠĠĠ Ġ} Ċ }