package Ġcom . github . trip let . gradle . common . validation Ċ Ċ import Ġcom . android . Version Ċ import Ġcom . android . build . gradle . api . Application Variant Ċ import Ġorg . gradle . api . logging . Logger Ċ import Ġorg . gradle . util . Gradle Version Ċ import Ġorg . gradle . util . VersionNumber Ċ Ċ private Ġval ĠMIN _ GRAD LE _ VERSION Ġ= ĠGradle Version . version (" 6 . 0 ") Ċ private Ġval ĠMIN _ AG P _ VERSION Ġ= ĠVersion Number . parse (" 3 . 5 . 0 ") Ċ Ċ /** Ċ Ġ* ĠValid ates Ġrequired Ġdependencies . ĠIf ĠG PP Ġcan 't Ġrun Ġin Ġthe Ġcurrent Ġcontext , Ġan Ġerror Ġwill Ġbe Ċ Ġ* Ġthrown . Ċ Ġ*/ Ċ fun Ġvalidate Runtime () Ġ{ ĊĠĠĠ Ġval Ġag p Version Ġ= ĠVersion Number . parse ( try Ġ{ ĊĠĠĠĠĠĠĠ ĠVersion . ANDROID _ GRAD LE _ PLUGIN _ VERSION ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠNo Class Def Found Error ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Suppress (" DE PREC ATION ") Ġ// ĠTODO (# 7 0 8 ): Ġremove Ġwhen Ġ 3 . 6 Ġis Ġthe Ġminimum ĊĠĠĠĠĠĠĠ Ġcom . android . builder . model . Version . ANDROID _ GRAD LE _ PLUGIN _ VERSION ĊĠĠĠ Ġ}) ĊĠĠĠ Ġval Ġvalidator Ġ= ĠRuntime Validator ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGradle Version . current (), ĠMIN _ GRAD LE _ VERSION , Ġag p Version , ĠMIN _ AG P _ VERSION ) ĊĊĠĠĠ Ġvalidator . validate () Ċ } Ċ Ċ /** Ġ@ return Ġtrue Ġif Ġthe Ġvariant Ġis Ġ* not * Ġdebug gable Ġand Ġcan Ġtherefore Ġbe Ġpublished . Ġ*/ Ċ fun Ġvalidate Debug g ability ( variant : ĠApplication Variant , Ġlogger : ĠLogger ): ĠBoolean Ġ{ ĊĠĠĠ Ġval ĠisValid Ġ= Ġ! variant . build Type . isDebug gable ĊĊĠĠĠ Ġif Ġ(! isValid ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠtypeName Ġ= Ġvariant . build Type . name ĊĠĠĠĠĠĠĠ Ġif Ġ( typeName . equals (" release ", Ġtrue )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . error (" G PP Ġcannot Ġconfigure Ġvariant Ġ'${ variant . name }' Ġbecause Ġit Ġis Ġdebug gable ") ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . info (" Skipping Ġdebug gable Ġbuild Ġwith Ġtype Ġ'$ typeName '") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn ĠisValid Ċ } Ċ