package Ġio . ark it ik . tr av ako . starter . processor . runner Ċ Ċ import Ġio . ark it ik . radix . develop . operation . ext . run Operation Ċ import Ġio . ark it ik . tr av ako . core . domain . runner . Scheduler Runner Domain Ċ import Ġio . ark it ik . tr av ako . function . processor . Pre Processor Ċ import Ġio . ark it ik . tr av ako . sdk . runner . Scheduler Runner Sdk Ċ import Ġio . ark it ik . tr av ako . starter . processor . config . Tr av ako Config Ċ import Ġorg . slf 4 j . LoggerFactory Ċ import Ġorg . springframework . boot . ExitCode Generator Ċ import Ġorg . springframework . boot . Spring Application Ċ import Ġorg . springframework . context . ApplicationContext Ċ Ċ /** Ċ Ġ* ĠCreated ĠBy Ġ[* I br ah im ĠAl - T am imi Ġ ï £ ¿ * ]( https :// www . linkedin . com / in / ilo om /) Ċ Ġ* ĠCreated ĠAt Ġ 2 8 Ġ 8 : 4 2 ĠPM , Ġ** Tue , ĠDecember Ġ 2 0 2 1 ** Ċ Ġ* ĠProject Ġ* tr av ako * Ġ[ ark it ik . io ]( https :// ark it ik . io ) Ċ Ġ*/ Ċ class ĠScheduler Runner Registration Process ( ĊĠĠĠ Ġprivate Ġval Ġtrav ako Config : ĠTr av ako Config , ĊĠĠĠ Ġprivate Ġval Ġscheduler Runner Sdk : ĠScheduler Runner Sdk , ĊĠĠĠ Ġprivate Ġval Ġapplication Context : ĠApplication Context , Ċ ) Ġ: ĠPre Processor < Scheduler Runner Domain > Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠLOGGER Ġ= ĠLoggerFactory . getLogger ( Scheduler Runner Registration Process :: class . java ) !! ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġtype Ġ= ĠScheduler Runner Domain :: class . java ĊĊĠĠĠ Ġoverride Ġfun Ġprocess () Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscheduler Runner Sdk . register Runner . run Operation ( tr av ako Config . key Dto ) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( exception : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLOGGER . error ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" A Ġrunner Ġwith Ġthe Ġsame Ġkey Ġand Ġhost Ġhas Ġbeen Ġregistered Ġpreviously Ġfor Ġthe Ġ[ Server Ġ{} ], Ġ[ Runner Ġ{} ], Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" the Ġapplication Ġwill Ġstop Ġworking Ġtill Ġyou Ġprovide Ġa Ġunique Ġrunner - key ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrav ako Config . server Key , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ tr av ako Config . key Dto . runner Key }-${ tr av ako Config . key Dto . runner Host }") ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLOGGER . error ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Error Ġwhile Ġregistering Ġthe ĠScheduler - Runner : Ġ[ Key : Ġ{} ] Ġ[ Error : Ġ{} ]", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ tr av ako Config . key Dto . runner Key }-${ tr av ako Config . key Dto . runner Host }", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexception ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSpring Application . exit ( application Context , ĠExit Code Generator Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ