/* Ċ Ġ* ĠCopyright Ġ 2 0 1 9 ĠSer ge ĠMer z li ak ov Ċ Ġ* Ċ Ġ* Ġ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 Ġorg . install m ation . image Ċ Ċ import Ġcom . google . common . event bus . EventBus Ċ import Ġorg . apache . logging . log 4 j . Log Manager Ċ import Ġorg . apache . logging . log 4 j . Logger Ċ import Ġorg . install m ation . model . Flag Argument Ċ import Ġorg . install m ation . model . Value Argument Ċ import Ġorg . install m ation . model . binary . Icon set Executable Ċ import Ġjava . io . File ĊĊ Ċ private Ġval Ġlog : ĠLogger Ġ= ĠLog Manager . getLogger ( OSX Image Processor :: class . java ) Ċ const Ġval ĠICON SET _ DIR Ġ= Ġ" App Icon . icon set " Ċ Ċ /** Ċ Ġ* ĠConverts ĠJ PG Ġand ĠPNG Ġfiles Ġinto Ġcorrect Ġimage Ġformat Ġfor Ġeach Ġoperating Ġsystem Ċ Ġ* Ċ Ġ* ĠĠĠ ĠOSX Ġ- Ġ> ĠIC NS Ġformat Ċ Ġ* ĠĠĠ ĠWindows Ġ-> Ċ Ġ*/ Ċ class ĠOSX Image Processor ( private Ġval Ġevent Bus : ĠEvent Bus ) Ġ: ĠImage Processor Ġ{ ĊĊĠĠ Ġ// Ġneed Ġto Ġcall Ġicon util Ġtool Ġwith Ġresult Ġof Ġthis Ġcall ĊĠĠ Ġoverride Ġfun Ġcreate Application Logo ( image File : ĠFile , Ġdestination : ĠFile ): ĠFile Ġ{ ĊĠĠĠĠĠ Ġif Ġ( image File . exists () Ġ&& Ġimage File . extension Ġ== Ġ" ic ns "){ ĊĠĠĠĠĠĠĠĠ Ġval Ġmoved Ġ= ĠFile ( destination , Ġimage File . name ) ĊĠĠĠĠĠĠĠĠ Ġimage File . copy To ( moved , Ġtrue ) ĊĠĠĠĠĠĠĠĠ Ġreturn Ġmoved ĊĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĊĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠ Ġval Ġicon set Dir Ġ= ĠFile ( destination , ĠICON SET _ DIR ) ĊĠĠĠĠĠĠĠĠ Ġicon set Dir . delete Re cursively () ĊĠĠĠĠĠĠĠĠ Ġicon set Dir . mkdir s () ĊĊĠĠĠĠĠĠĠĠ ĠImage Tool . new Image With Size ( Image Tool . ImageType . P ng , Ġimage File , Ġ" icon _ 1 6 x 1 6 . png ", Ġicon set Dir , Ġ 1 6 , Ġ 1 6 ) ĊĠĠĠĠĠĠĠĠ ĠImage Tool . new Image With Size ( Image Tool . ImageType . P ng , Ġimage File , Ġ" icon _ 1 6 x 1 6 @ 2 x . png ", Ġicon set Dir , Ġ 3 2 , Ġ 3 2 ) ĊĠĠĠĠĠĠĠĠ ĠImage Tool . new Image With Size ( Image Tool . ImageType . P ng , Ġimage File , Ġ" icon _ 3 2 x 3 2 . png ", Ġicon set Dir , Ġ 3 2 , Ġ 3 2 ) ĊĠĠĠĠĠĠĠĠ ĠImage Tool . new Image With Size ( Image Tool . ImageType . P ng , Ġimage File , Ġ" icon _ 3 2 x 3 2 @ 2 x . png ", Ġicon set Dir , Ġ 6 4 , Ġ 6 4 ) ĊĠĠĠĠĠĠĠĠ ĠImage Tool . new Image With Size ( Image Tool . ImageType . P ng , Ġimage File , Ġ" icon _ 1 2 8 x 1 2 8 . png ", Ġicon set Dir , Ġ 1 2 8 , Ġ 1 2 8 ) ĊĠĠĠĠĠĠĠĠ ĠImage Tool . new Image With Size ( Image Tool . ImageType . P ng , Ġimage File , Ġ" icon _ 1 2 8 x 1 2 8 @ 2 x . png ", Ġicon set Dir , Ġ 2 5 6 , Ġ 2 5 6 ) ĊĠĠĠĠĠĠĠĠ ĠImage Tool . new Image With Size ( Image Tool . ImageType . P ng , Ġimage File , Ġ" icon _ 2 5 6 x 2 5 6 . png ", Ġicon set Dir , Ġ 2 5 6 , Ġ 2 5 6 ) ĊĠĠĠĠĠĠĠĠ ĠImage Tool . new Image With Size ( Image Tool . ImageType . P ng , Ġimage File , Ġ" icon _ 2 5 6 x 2 5 6 @ 2 x . png ", Ġicon set Dir , Ġ 5 1 2 , Ġ 5 1 2 ) ĊĠĠĠĠĠĠĠĠ ĠImage Tool . new Image With Size ( Image Tool . ImageType . P ng , Ġimage File , Ġ" icon _ 5 1 2 x 5 1 2 . png ", Ġicon set Dir , Ġ 5 1 2 , Ġ 5 1 2 ) ĊĠĠĠĠĠĠĠĠ ĠImage Tool . new Image With Size ( Image Tool . ImageType . P ng , Ġimage File , Ġ" icon _ 5 1 2 x 5 1 2 @ 2 x . png ", Ġicon set Dir , Ġ 1 0 2 4 , Ġ 1 0 2 4 ) ĊĊĠĠĠĠĠĠĠĠ Ġval Ġic ns Ġ= Ġgenerate IC NS ( image File . name Without Extension , Ġdestination , Ġicon set Dir ) ĊĠĠĠĠĠĠĠĠ Ġicon set Dir . delete Re cursively () ĊĠĠĠĠĠĠĠĠ Ġreturn Ġic ns ĊĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠ Ġval Ġmsg Ġ= Ġ" Error Ġgenerating ĠIC NS Ġon ĠOSX . ĠSource Ġimage : Ġ${ image File . path } Ġinto Ġ${ destination . path }" ĊĠĠĠĠĠĠĠĠ Ġlog . error ( msg , Ġe ) ĊĠĠĠĠĠĠĠĠ Ġthrow ĠImage Processing Exception ( msg , Ġe ) ĊĠĠĠĠĠ Ġ} ĊĠĠ Ġ} ĊĊĊĠĠ Ġprivate Ġfun Ġgenerate IC NS ( ic ns Name : ĠString , Ġdestination : ĠFile , Ġicon set : ĠFile ): ĠFile Ġ{ ĊĠĠĠĠĠ Ġval Ġic ns Ġ= ĠIcon set Executable ( event Bus ) ĊĠĠĠĠĠ Ġval ĠoutputFile Ġ= ĠFile ( destination , Ġ"$ ic ns Name . ic ns ") ĊĠĠĠĠĠ Ġlog . debug (" Generating ĠIC NS Ġfile Ġ${ outputFile . path } ..... ") ĊĠĠĠĠĠ Ġic ns . parameters . add Argument ( Value Argument ("- c ", Ġ" ic ns ")) ĊĠĠĠĠĠ Ġic ns . parameters . add Argument ( Value Argument ("-- output ", ĠoutputFile . path )) ĊĠĠĠĠĠ Ġic ns . parameters . add Argument ( Flag Argument ( icon set . path )) ĊĠĠĠĠĠ Ġval Ġoutput Ġ= Ġic ns . execute () ĊĠĠĠĠĠ Ġif Ġ( output . success ()) ĊĠĠĠĠĠĠĠĠ Ġlog . info (" Generated ĠIC NS Ġfile Ġ$ outputFile . path ") ĊĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠ Ġthrow ĠImage Processing Exception (" Errors Ġwith Ġicon util Ġwhen Ġgenerating ĠIC NS Ġfile : Ġ${ output . errors (). join ToString (".") }") ĊĠĠĠĠĠ Ġreturn ĠoutputFile ĊĠĠ Ġ} Ċ Ċ }