/* Ċ Ġ* ĠCopyright ĠS or am its u ĠCo ., ĠLtd . ĠAll ĠRights ĠReserved . Ċ Ġ* ĠSPDX - License - Identifier : ĠApache - 2 . 0 Ċ Ġ*/ Ċ Ċ @ file : Jvm Name (" Change log App Main ") Ċ Ċ package Ġjp . co . sor am its u . bootstrap . changelog Ċ Ċ import Ġcom . github . kit tin un f . result . Result Ċ import Ġcom . github . kit tin un f . result . failure Ċ import Ġcom . github . kit tin un f . result . map Ċ import Ġio . ktor . server . engine . application Engine Environment Ċ import Ġio . ktor . server . engine . connector Ċ import Ġio . ktor . server . engine . embedded Server Ċ import Ġio . ktor . server . netty . Net ty Ċ import Ġjp . co . sor am its u . bootstrap . changelog . config . changelog Config Ċ import Ġjp . co . sor am its u . bootstrap . changelog . endpoint . changelog Module Ċ import Ġjp . co . sor am its u . bootstrap . changelog . endpoint . health Check Module Ċ import Ġjp . co . sor am its u . bootstrap . changelog . service . Change log ExecutorService Ċ import Ġmu . K Logging Ċ import Ġorg . springframework . context . annotation . Annotation Config ApplicationContext Ċ import Ġorg . springframework . context . annotation . Component Scan Ċ Ċ private Ġval Ġlogger Ġ= ĠK Logging (). logger Ċ Ċ @ Component Scan Ċ class ĠChangelog App Ċ Ċ /** Ċ Ġ* ĠChangelog Ġmain Ġendpoint Ċ Ġ*/ Ċ fun Ġmain ( args : ĠArray < String >) Ġ{ ĊĠĠĠ ĠResult . of Ġ{ ĊĠĠĠĠĠĠĠ ĠAnnotation Config ApplicationContext ( Change log App :: class . java ) ĊĠĠĠ Ġ}. map Ġ{ Ġcontext Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġchangelog Executor Ġ= Ġcontext . getBean ( Change log ExecutorService :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġenv Ġ= Ġapplication Engine Environment Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodule Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchangelog Module ( changelog Executor ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Check Module () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconnector Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġport Ġ= Ġchangelog Config . port ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġembedded Server ( Net ty , Ġenv ). start ( true ) ĊĠĠĠ Ġ}. failure Ġ{ Ġex Ġ-> ĊĠĠĠĠĠĠĠ Ġlogger . error (" Cannot Ġstart Ġchangelog Ġservice ", Ġex ) ĊĠĠĠĠĠĠĠ ĠSystem . exit ( 1 ) ĊĠĠĠ Ġ} Ċ } Ċ