package Ġcom . oct o . worker decorator . processor Ċ Ċ import Ġcom . oct o . worker decorator . processor . entity . Implementation Ċ import Ġcom . oct o . worker decorator . processor . entity . Implementation . EXECUT OR Ċ import Ġcom . oct o . worker decorator . processor . entity . Language Ċ import Ġcom . oct o . worker decorator . processor . entity . Language . K OT LIN Ċ import Ġjava . lang . IllegalArgumentException Ċ import Ġjava . lang . RuntimeException Ċ Ċ class ĠReflect Configuration Reader Ġ: ĠGlobal Configuration Reader Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCONFIG URATION _ CLASS Ġ= Ġ" com . oct o . worker decorator . processor . Global Configuration " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġlanguage : ĠLanguage Ġby Ġlazy Ġ{ Ġread Field (" LANGUAGE ", ĠK OT LIN ) Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġimplementation : ĠImplementation Ġby Ġlazy Ġ{ Ġread Field (" IMPLEMENT ATION ", ĠEXEC UT OR ) Ġ} ĊĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġprivate Ġfun Ġ< T Ġ: ĠAny > Ġread Field ( name : ĠString , Ġdefault : ĠT ): ĠT Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclazz Ġ= Ġjava Class . class Loader . load Class ( CONFIGURATION _ CLASS ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfields Ġ= Ġclazz . declared Fields ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( fields . isEmpty ()) Ġthrow ĠNoSuch Field Exception () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfield Ġ= Ġfields . asList (). find Ġ{ Ġit . name Ġ== Ġname Ġ} Ġ?: Ġthrow ĠNoSuch Field Exception () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġfield . get ( null ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġas ? ĠT Ġ?: Ġthrow ĠIllegalArgumentException () ĊĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠReflect ive OperationException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdefault ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠRuntimeException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdefault ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }