/* Ċ Copyright Ġ 2 0 1 7 ĠGoogle ĠInc . Ċ Ċ 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 ĊĊĠĠĠ Ġhttps :// 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 . google . android stud iop o et . generators . android _ modules Ċ Ċ import Ġcom . google . android stud iop o et . models . Android Module Blueprint Ċ import Ġcom . google . android stud iop o et . utils . join Path Ċ import Ġcom . google . android stud iop o et . writ ers . FileWriter Ċ Ċ class ĠPro guard Generator ( val Ġfile Writer : ĠFile Writer ) Ġ{ ĊĠĠĠ Ġfun Ġgenerate ( blueprint : ĠAndroid Module Blueprint ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmodule Root Ġ= Ġblueprint . module Root ĊĊĠĠĠĠĠĠĠ Ġval Ġpro guard Text Ġ= Ġ"# ĠAdd Ġproject Ġspecific ĠPro Guard Ġrules Ġhere .\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# ĠYou Ġcan Ġcontrol Ġthe Ġset Ġof Ġapplied Ġconfiguration Ġfiles Ġusing Ġthe \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# Ġpro guard Files Ġsetting Ġin Ġbuild . gradle .\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# ĠFor Ġmore Ġdetails , Ġsee \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# ĠĠ Ġhttp :// developer . android . com / guide / develop ing / tools / pro guard . html \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# ĠIf Ġyour Ġproject Ġuses ĠWebView Ġwith ĠJS , Ġuncomment Ġthe Ġfollowing \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# Ġand Ġspecify Ġthe Ġfully Ġqualified Ġclass Ġname Ġto Ġthe ĠJavaScript Ġinterface \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# Ġclass :\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# - keep class members Ġclass Ġfq cn . of . javascript . interface . for . webview Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# ĠĠ Ġpublic Ġ* ;\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# }\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# ĠUncomment Ġthis Ġto Ġpreserve Ġthe Ġline Ġnumber Ġinformation Ġfor \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# Ġdebugging Ġstack Ġtraces .\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# - keep attributes ĠSource File , LineNumber Table \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# ĠIf Ġyou Ġkeep Ġthe Ġline Ġnumber Ġinformation , Ġuncomment Ġthis Ġto \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# Ġhide Ġthe Ġoriginal Ġsource Ġfile Ġname .\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"# - rename source file attribute ĠSource File " ĊĊĊĠĠĠĠĠĠĠ Ġfile Writer . write ToFile ( pro guard Text , Ġmodule Root . join Path (" pro guard - rules . pro ")) ĊĠĠĠ Ġ} Ċ } Ċ