import Ġorg . gradle . api . artifacts . dsl . Dependency Handler Ċ import Ġorg . gradle . api . initialization . dsl . Script Handler . CLAS SPATH _ CONFIGURATION Ċ Ċ object ĠDependencies Manager Ġ{ ĊĠĠĠ Ġval Ġkotlin Implementation Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Kotlin Dependencies . K OT LIN _ REF LECTION ) ĊĠĠĠĠĠĠĠ Ġadd ( Kotlin Dependencies . K OT LIN _ STD _ LIB ) ĊĠĠĠĠĠĠĠ Ġadd ( Kotlin Dependencies . COR OUT INE _ CORE ) ĊĠĠĠĠĠĠĠ Ġadd ( Kotlin Dependencies . COR OUT INE _ ANDROID ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġnetwork Implementation Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Network Dependencies . RET RO FIT ) ĊĠĠĠĠĠĠĠ Ġadd ( Network Dependencies . OK HTTP ) ĊĠĠĠĠĠĠĠ Ġadd ( Network Dependencies . OK HTTP _ LOG GING _ INTER CEPT OR ) ĊĠĠĠĠĠĠĠ Ġadd ( Network Dependencies . RET RO FIT _ CONVERT OR _ G SON ) ĊĠĠĠĠĠĠĠ Ġadd ( Network Dependencies . G SON ) ĊĠĠĠĠĠĠĠ Ġadd ( Network Dependencies . GL IDE ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġnetwork K apt Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Network Dependencies . GL IDE _ COMPILER ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġlife Cycle K tx Implementation Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Life Cycle K tx Dependencies . CORE _ K TX ) ĊĠĠĠĠĠĠĠ Ġadd ( Life Cycle K tx Dependencies . LI FE CY CL _ E EXTENSION S ) ĊĠĠĠĠĠĠĠ Ġadd ( Life Cycle K tx Dependencies . Collection _ K TX ) ĊĠĠĠĠĠĠĠ Ġadd ( Life Cycle K tx Dependencies . VIEW _ MODEL _ K TX ) ĊĠĠĠĠĠĠĠ Ġadd ( Life Cycle K tx Dependencies . VIEW _ MODEL _ SAVE _ STATE _ K TX ) ĊĠĠĠĠĠĠĠ Ġadd ( Life Cycle K tx Dependencies . LI VED ATA _ K TX ) ĊĠĠĠĠĠĠĠ Ġadd ( Life Cycle K tx Dependencies . LI FE CYCLE _ RUNTIME ) ĊĠĠĠĠĠĠĠ Ġadd ( Life Cycle K tx Dependencies . LI FE CYCLE _ RUNTIME _ K TX ) ĊĠĠĠĠĠĠĠ Ġadd ( Life Cycle K tx Dependencies . LI FE CYCLE _ COMMON _ JAVA ) ĊĠĠĠĠĠĠĠ Ġadd ( Life Cycle K tx Dependencies . RE ACTIVE _ STREAM S ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġandroidx Implementation Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . APP COMPAT ) ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . FRAGMENT _ K TX ) ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . ACTIVITY _ K TX ) ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . CONSTRAINT _ LAYOUT ) ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . CONSTRAINT _ LAYOUT _ SOL VER ) ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . CARD _ VIEW ) ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . REC Y CL ER VIEW ) ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . VECTOR _ DRAW ABLE ) ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . VECTOR _ DRAW ABLE _ ANIM ATED ) ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . SECURITY ) ĊĠĠĠĠĠĠĠ Ġadd ( Android x Dependencies . MAT ERIAL ) ĊĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġnavigation Implementation Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Navigation Dependencies . NAV IG ATION _ RUNTIME ) ĊĠĠĠĠĠĠĠ Ġadd ( Navigation Dependencies . NAV IG ATION _ FRAGMENT _ K TX ) ĊĠĠĠĠĠĠĠ Ġadd ( Navigation Dependencies . NAV IG ATION _ UI _ K TX ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġthird Party Implementation Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Third Party Dependencies . SD P ) ĊĠĠĠĠĠĠĠ Ġadd ( Third Party Dependencies . SS P ) ĊĠĠĠĠĠĠĠ Ġadd ( Third Party Dependencies . INLINE _ ACTIVITY _ RESULT ) ĊĠĠĠĠĠĠĠ Ġadd ( Third Party Dependencies . SH IM MER ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġr X Implementation Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( RX Dependencies . RX _ ANDROID ) ĊĠĠĠĠĠĠĠ Ġadd ( RX Dependencies . RX _ JAVA ) ĊĠĠĠĠĠĠĠ Ġadd ( RX Dependencies . INLINE _ ACTIVITY _ RESULT ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġh ilt Implementation Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( H ilt D agger Dependencies . DAG GER _ H IL T ) ĊĠĠĠĠĠĠĠ Ġadd ( H ilt D agger Dependencies . H IL T _ FRAGMENT ) Ċ // ĠĠĠĠĠĠ Ġadd ( H ilt D agger Dependencies . H IL T _ VM ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġh ilt K apt Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( H ilt D agger Dependencies . DAG GER _ COMPILER ) Ċ // ĠĠĠĠĠĠĠ Ġadd ( H ilt D agger Dependencies . H IL T _ COMPILER ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġval Ġtesting Implementation Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . J UNIT 4 ) ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . MOCK K ) ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . RO BO LECT RIC ) ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . J UP ITER ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġandroid Test Implementation Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . TEST EXTENSION S ) ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . ES PRESS O CORE ) ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . TE STR UN NER ) ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . TE STR ULES ) ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . ES PRESS O INT ENTS ) ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . H IL T TEST ING ) ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . MOCK IT O _ CORE ) ĊĠĠĠĠĠĠĠ Ġadd ( Test Dependencies . MOCK IT O _ INLINE ) ĊĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġroom DB Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Room Db Dependencies . RUNTIME ) ĊĠĠĠĠĠĠĠ Ġadd ( Room Db Dependencies . K TX ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġroom DB K PT Ġ= Ġarray ListOf < String >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ( Room Db Dependencies . K TP ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ // util Ġfunctions Ġfor Ġadding Ġthe Ġdifferent Ġtype Ġdependencies Ġfrom Ġbuild . gradle Ġfile Ċ fun ĠDependency Handler . k apt ( list : ĠList < String >) Ġ{ ĊĠĠĠ Ġlist . forEach Ġ{ Ġdependency Ġ-> ĊĠĠĠĠĠĠĠ Ġadd (" k apt ", Ġdependency ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠDependency Handler . implementation ( list : ĠList < String >) Ġ{ ĊĠĠĠ Ġlist . forEach Ġ{ Ġdependency Ġ-> ĊĠĠĠĠĠĠĠ Ġadd (" implementation ", Ġdependency ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠDependency Handler . android Test Implementation ( list : ĠList < String >) Ġ{ ĊĠĠĠ Ġlist . forEach Ġ{ Ġdependency Ġ-> ĊĠĠĠĠĠĠĠ Ġadd (" android Test Implementation ", Ġdependency ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠDependency Handler . test Implementation ( list : ĠList < String >) Ġ{ ĊĠĠĠ Ġlist . forEach Ġ{ Ġdependency Ġ-> ĊĠĠĠĠĠĠĠ Ġadd (" test Implementation ", Ġdependency ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠDependency Handler . classpath ( list : ĠList < String >) Ġ{ ĊĠĠĠ Ġlist . forEach Ġ{ Ġclass Path Ġ-> ĊĠĠĠĠĠĠĠ Ġthis . add ( CLAS SPATH _ CONFIGURATION , Ġclass Path ) ĊĠĠĠ Ġ} Ċ } Ċ