/* Ċ Ġ* ĠLicensed Ġto Ġthe ĠApache ĠSoftware ĠFoundation Ġ( ASF ) Ġunder Ġone Ċ Ġ* Ġor Ġmore Ġcontributor Ġlicense Ġagreements . Ġ ĠSee Ġthe ĠNOTICE Ġfile Ċ Ġ* Ġdistributed Ġwith Ġthis Ġwork Ġfor Ġadditional Ġinformation Ċ Ġ* Ġregarding Ġcopyright Ġownership . Ġ ĠThe ĠASF Ġlicenses Ġthis Ġfile Ċ Ġ* Ġto Ġyou Ġ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 . apache . t inker pop 4 . gre mlin . js r 2 2 3 Ċ Ċ import Ġjava . util . Collections Ċ Ċ /** Ċ Ġ* ĠA Ġ[ G re mlin Script Engine Factory ] Ġimplementation Ġthat Ġcreates Ġ[ G re mlin Lang Script Engine ] Ġinstances . Ċ Ġ*/ Ċ class ĠG re mlin Lang Script Engine Factory Ġ: ĠAbstract G re mlin Script Engine Factory ( ĊĠĠĠ ĠENGINE _ NAME , ĠLANGUAGE _ NAME , ĠEXT ENSION S , ĠCollections . singletonList ( ĊĠĠĠĠĠĠĠ ĠP LA IN ĊĠĠĠ Ġ) Ċ ) Ġ{ ĊĠĠĠ Ġ@ Override ĊĠĠĠ Ġfun Ġget MethodCall Syntax ( obj : ĠString ?, Ġm : ĠString ?, Ġvar arg Ġargs : ĠString ?): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Override ĊĠĠĠ Ġfun Ġget Output Statement ( to Display : ĠString ?): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ get : Override ĊĠĠĠ Ġval Ġscript Engine : ĠG re mlin Script Engine ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcustom izers : ĠList < Customizer > Ġ= Ġmanager . get Custom izers ( ENGINE _ NAME ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( custom izers . isEmpty ()) ĠG re mlin Lang Script Engine () Ġelse ĠG re mlin Lang Script Engine ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcustom izers . toArray ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠarrayOf Null s < Customizer >( custom izers . size ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠENGINE _ NAME Ġ= Ġ" gre mlin - lang " ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠLANGUAGE _ NAME Ġ= Ġ" gre mlin - lang " ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠP LA IN Ġ= Ġ" plain " ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠEXT ENSION S : ĠList < String > Ġ= ĠCollections . singletonList (" gre mlin ") ĊĠĠĠ Ġ} Ċ }