/** Ċ Ġ* ĠFile ĠĠĠĠ Ġ: ĠLog Factory . kt Ċ Ġ* ĠLicense Ġ Ġ: Ċ Ġ* ĠĠ ĠOriginal ĠĠ Ġ- ĠCopyright Ġ( c ) Ġ 2 0 1 0 Ġ- Ġ 2 0 1 6 ĠBox fuse ĠGmbH Ċ Ġ* ĠĠ ĠDer iv ative Ġ- ĠCopyright Ġ( c ) Ġ 2 0 1 6 Ġ- Ġ 2 0 1 8 Ġc assandra - migration ĠContributors Ċ Ġ* Ċ Ġ* ĠĠ Ġ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 Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠĠĠĠĠ Ġ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 Ġcom . h hand oko . cassandra . migration . internal . util . logging Ċ Ċ import Ġcom . h hand oko . cassandra . migration . internal . util . Feature Detector Ċ import Ġcom . h hand oko . cassandra . migration . internal . util . logging . apache commons . Apache Common s Log Creator Ċ import Ġcom . h hand oko . cassandra . migration . internal . util . logging . java util . JavaUtil Log Creator Ċ import Ġcom . h hand oko . cassandra . migration . internal . util . logging . slf 4 j . Slf 4 j Log Creator Ċ Ċ object ĠLog Factory Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠFactory Ġfor Ġimplementation - specific Ġlog gers . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġvar Ġ_ log Creator : ĠLog Creator ? Ġ= Ġnull ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThe Ġfactory Ġfor Ġimplementation - specific Ġlog gers Ġto Ġbe Ġused Ġas Ġa Ġfallback Ġwhen Ġno Ġother Ġsuitable Ġlog gers Ġwere Ġfound . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġvar Ġ_ fallback Log Creator : ĠLog Creator ? Ġ= Ġnull ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ@ param Ġlog Creator ĠThe Ġfactory Ġfor Ġimplementation - specific Ġlog gers . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Log Creator ( log Creator : ĠLog Creator ) Ġ{ ĊĠĠĠĠĠĠĠ ĠLog Factory ._ log Creator Ġ= Ġlog Creator ĊĠĠĠ Ġ} ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ@ param Ġfallback Log Creator ĠThe Ġfactory Ġfor Ġimplementation - specific Ġlog gers ĊĠĠĠĠ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġto Ġbe Ġused Ġas Ġa Ġfallback Ġwhen Ġno Ġother Ġsuitable Ġlog gers Ġwere Ġfound . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Fallback Log Creator ( fallback Log Creator : ĠLog Creator ) Ġ{ ĊĠĠĠĠĠĠĠ ĠLog Factory ._ fallback Log Creator Ġ= Ġfallback Log Creator ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠRetrieves Ġthe Ġmatching Ġlogger Ġfor Ġthis Ġclass . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġclazz ĠThe Ġclass Ġto Ġget Ġthe Ġlogger Ġfor . ĊĠĠĠĠ Ġ* Ġ@ return ĠThe Ġlogger . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġget Log ( clazz : ĠClass < *> ): ĠLog Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(_ log Creator Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclass Loader Ġ= ĠThread . currentThread (). context ClassLoader ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfeature Detector Ġ= ĠFeature Detector ( class Loader ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ log Creator Ġ= Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfeature Detector . is Slf 4 j Available ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-> ĠS lf 4 j Log Creator () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfeature Detector . is Apache Common s Logging Available Ġ-> ĠApache Common s Log Creator () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ fallback Log Creator Ġ== Ġnull ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-> ĠJava Util Log Creator () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-> Ġ_ fallback Log Creator ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġ_ log Creator !!. create Logger ( clazz ) ĊĠĠĠ Ġ} Ċ Ċ } Ċ