/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 2 1 Ġf my . Ċ Ġ* Ċ Ġ* Ġ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 Ġorg . module archive . config Ċ Ċ import Ġorg . module archive . I Info Center Ċ import Ġorg . module archive . extension . Project Manage Helper Ċ import Ġorg . module archive . extension . Project Manage Wrapper Ċ import Ġorg . module archive . log . Module Archive Logger Ċ import Ġjava . io . File Ċ import Ġjava . io . FileReader Ċ import Ġjava . io . FileWriter Ċ import Ġjava . util .* Ċ Ċ class ĠProperty Info Helper Ġconstructor ( private Ġval Ġinfo : ĠI Info Center ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġprops Ġ= ĠProperties () ĊĊĠĠĠ Ġvar Ġis Init Ġ= Ġfalse ĊĊĠĠĠ Ġprivate Ġval ĠfileName Ġ= Ġ" Module Archive . properties " ĊĊĠĠĠ Ġprivate Ġfun Ġget PropertyInfo (): ĠProperties Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! is Init ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstore Lib s Dir Ġ= Ġinfo . getModule Archive Extension (). store Lib s Dir ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġconfig File Ġ= ĠFile ( store Lib s Dir , ĠfileName ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! configFile . exists ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig File . createNew File () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprops . load ( FileReader ( configFile )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( configFile . exists ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprops . load ( FileReader ( configFile )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġis Init Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġreturn Ġprops ĊĠĠĠ Ġ} Ċ Ċ // ĠĠĠ Ġ/** Ċ // ĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ ç¼ĵåŃĺ Ċ // ĠĠĠĠ Ġ*/ Ċ // ĠĠĠ Ġfun Ġcurrent A ar Hit ( project : ĠProject Manage ): ĠBoolean Ġ{ Ċ // Ċ // ĠĠĠĠĠĠĠ Ġval Ġa ar File Ġ= Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠProject Manage Helper . obtain Project A AR File ( info , Ġproject ) Ċ // Ċ // ĠĠĠĠĠĠĠ Ġif Ġ(! aar File . exists ()) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠModule Archive Logger . log Lifecycle ("${ project . name } Ġdon 't Ġfind Ġcache Ġa ar .") Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse Ċ // ĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠ Ġval Ġproperty Info Ġ= Ġget PropertyInfo () Ċ // ĠĠĠĠĠĠĠ Ġval Ġcur A AR Pro LastModified Ġ= ĠProject Manage Helper . cur A AR Pro LastModified ( info , Ġproject ) Ċ // ĠĠĠĠĠĠĠ Ġval Ġproperty Ġ= Ġproperty Info . getProperty ( project . aar Name ) Ċ // ĠĠĠĠĠĠĠ Ġif Ġ( cur A AR Pro LastModified . toString () Ġ== Ġproperty ) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠModule Archive Logger . log Lifecycle ("${ project . name } Ġ Ġfound Ġcache Ġa ar .") Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue Ċ // ĠĠĠĠĠĠĠ Ġ} Ċ // Ċ // ĠĠĠĠĠĠĠ ĠModule Archive Logger . log Lifecycle ("${ project . name } Ġdon 't Ġfind Ġcache Ġa ar .") Ċ // ĠĠĠĠĠĠĠ Ġreturn Ġfalse Ċ // ĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ ç¼ĵåŃĺ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġcurrent A ar Hit ( project : ĠProject Manage Wrapper ): ĠBoolean Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġa ar File Ġ= Ġproject . obtain Cache A AR File () ĊĊĠĠĠĠĠĠĠ Ġif Ġ(! aar File . exists ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠModule Archive Logger . log Lifecycle ("${ project . origin Data . name } Ġdon 't Ġfind Ġcache Ġa ar .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġproperty Info Ġ= Ġget PropertyInfo () ĊĠĠĠĠĠĠĠ Ġval Ġcur A AR Pro LastModified Ġ= Ġproject . obtain LastModified (); ĊĠĠĠĠĠĠĠ Ġval Ġproperty Ġ= Ġproperty Info . getProperty ( project . origin Data . aar Name ) ĊĠĠĠĠĠĠĠ Ġif Ġ( cur A AR Pro LastModified . toString () Ġ== Ġproperty ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠModule Archive Logger . log Lifecycle ("${ project . origin Data . name } Ġ Ġfound Ġcache Ġa ar .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠModule Archive Logger . log Lifecycle ("${ project . origin Data . name } Ġdon 't Ġfind Ġcache Ġa ar .") ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ ç¼ĵåŃĺ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġup Project Manager ( project : ĠProject Manage Wrapper ) Ġ{ Ċ // ĠĠĠĠĠĠĠ Ġval Ġa ar File Ġ= Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠProject Manage Helper . obtain Project A AR File ( info , Ġproject ) Ċ // Ċ // ĠĠĠĠĠĠĠ Ġif Ġ(! aar File . exists ()) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠModule Archive Logger . log Lifecycle ("${ project . name } Ġdon 't Ġfind Ġcache Ġa ar .") Ċ // Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse Ċ // ĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġproperty Info Ġ= Ġget PropertyInfo () ĊĠĠĠĠĠĠĠ Ġval Ġcur A AR Pro LastModified Ġ= Ġproject . obtain LastModified () ĊĠĠĠĠĠĠĠ Ġproperty Info . setProperty ( project . origin Data . aar Name , Ġcur A AR Pro LastModified . toString ()) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ ç¼ĵåŃĺ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġwrite File () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġproperty Info Ġ= Ġget PropertyInfo () ĊĠĠĠĠĠĠĠ Ġval Ġstore Lib s Dir Ġ= Ġinfo . getModule Archive Extension (). store Lib s Dir ĊĠĠĠĠĠĠĠ Ġval Ġconfig File Ġ= ĠFile ( store Lib s Dir , ĠfileName ) ĊĠĠĠĠĠĠĠ Ġproperty Info . store ( FileWriter ( configFile ), Ġ" çĶ¨äºİ åŃĺåĤ¨ ç¼ĵåŃĺ aar æĺłå°Ħ åħ³ç³» ") ĊĠĠĠ Ġ} Ċ Ċ }