/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 Ġthe Ġoriginal Ġauthor Ġor Ġauthors . Ċ Ġ* Ċ Ġ* Ġ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 Ġorg . gradle . configuration cache . serialization Ċ Ċ import Ġorg . gradle . api . internal . Generated Sub classes Ċ import Ġorg . gradle . configuration cache . problems . Documentation Section Ċ import Ġorg . gradle . configuration cache . problems . Documentation Section . Not Y et Implemented Ċ import Ġorg . gradle . configuration cache . problems . Documentation Section . Requirements Dis allowed Types Ċ Ċ import Ġorg . gradle . configuration cache . problems . Property Problem Ċ import Ġorg . gradle . configuration cache . problems . Structured Message . Companion . build Ċ import Ġorg . gradle . configuration cache . problems . Structured Message Builder Ċ import Ġorg . gradle . configuration cache . problems . property Description For Ċ Ċ import Ġkotlin . reflect . K Class ĊĊ Ċ fun ĠI sol ate Context . log Property Problem ( ĊĠĠĠ Ġaction : ĠString , ĊĠĠĠ Ġexception : ĠThrowable ? Ġ= Ġnull , ĊĠĠĠ Ġdocumentation Section : ĠDocumentation Section ? Ġ= Ġnull , ĊĠĠĠ Ġmessage : ĠStruct ured Message Builder Ċ ) Ġ{ ĊĠĠĠ Ġlog Property Problem ( action , ĠProperty Problem ( trace , Ġbuild ( message ), Ġexception , Ġdocumentation Section )) Ċ } ĊĊ Ċ internal Ċ fun ĠI sol ate Context . log Unsupported ( ĊĠĠĠ Ġaction : ĠString , ĊĠĠĠ Ġbase Type : ĠK Class <* >, ĊĠĠĠ Ġactual Type : ĠClass <* >, ĊĠĠĠ Ġdocumentation Section : ĠDocumentation Section Ġ= ĠRequirements Dis allowed Types Ċ ) Ġ{ ĊĠĠĠ Ġlog Unsupported ( action , Ġdocumentation Section ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtext (" Ġobject Ġof Ġtype Ġ") ĊĠĠĠĠĠĠĠ Ġreference ( Generated Sub classes . unpack ( actual Type )) ĊĠĠĠĠĠĠĠ Ġtext (", Ġa Ġsubtype Ġof Ġ") ĊĠĠĠĠĠĠĠ Ġreference ( base Type ) ĊĠĠĠĠĠĠĠ Ġtext (",") ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ internal Ċ fun ĠI sol ate Context . log Unsupported ( ĊĠĠĠ Ġaction : ĠString , ĊĠĠĠ Ġbase Type : ĠK Class <* >, ĊĠĠĠ Ġdocumentation Section : ĠDocumentation Section Ġ= ĠRequirements Dis allowed Types Ċ ) Ġ{ ĊĠĠĠ Ġlog Unsupported ( action , Ġdocumentation Section ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtext (" Ġobject Ġof Ġtype Ġ") ĊĠĠĠĠĠĠĠ Ġreference ( base Type ) ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ internal Ċ fun ĠI sol ate Context . log Unsupported ( ĊĠĠĠ Ġaction : ĠString , ĊĠĠĠ Ġdocumentation Section : ĠDocumentation Section Ġ= ĠRequirements Dis allowed Types , ĊĠĠĠ Ġunsupported Things : ĠStruct ured Message Builder Ċ ) Ġ{ ĊĠĠĠ Ġlog Property Problem ( ĊĠĠĠĠĠĠĠ Ġaction , ĊĠĠĠĠĠĠĠ ĠProperty Problem ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrace , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuild Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext (" cannot Ġ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext ( action ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġunsupported Things () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext (" Ġas Ġthese Ġare Ġnot Ġsupported Ġwith Ġthe Ġconfiguration Ġcache .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdocumentation Section ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) Ċ } ĊĊ Ċ fun ĠI sol ate Context . log NotImplemented ( base Type : ĠClass <* >) Ġ{ ĊĠĠĠ Ġlog Property Problem Ġ{ ĊĠĠĠĠĠĠĠ Ġtext (" objects Ġof Ġtype Ġ") ĊĠĠĠĠĠĠĠ Ġreference ( base Type ) ĊĠĠĠĠĠĠĠ Ġtext (" Ġare Ġnot Ġyet Ġsupported Ġwith Ġthe Ġconfiguration Ġcache .") ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ internal Ċ fun ĠI sol ate Context . log NotImplemented ( feature : ĠString , Ġdocumentation Section : ĠDocumentation Section Ġ= ĠNot Y et Implemented ) Ġ{ ĊĠĠĠ Ġon Problem ( ĊĠĠĠĠĠĠĠ ĠProperty Problem ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrace , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuild Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext (" support Ġfor Ġ$ feature Ġis Ġnot Ġyet Ġimplemented Ġwith Ġthe Ġconfiguration Ġcache .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull , Ġdocumentation Section ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) Ċ } ĊĊ Ċ private Ċ fun ĠI sol ate Context . log Property Problem ( documentation Section : ĠDocumentation Section ? Ġ= Ġnull , Ġmessage : ĠStruct ured Message Builder ) Ġ{ ĊĠĠĠ Ġval Ġproblem Ġ= ĠProperty Problem ( trace , Ġbuild ( message ), Ġnull , Ġdocumentation Section ) ĊĠĠĠ Ġlog Property Problem (" serialize ", Ġproblem ) Ċ } ĊĊ Ċ private Ċ fun ĠI sol ate Context . log Property Problem ( action : ĠString , Ġproblem : ĠProperty Problem ) Ġ{ ĊĠĠĠ Ġlogger . debug (" configuration - cache Ġ> Ġfailed Ġto Ġ{} Ġ{} Ġbecause Ġ{}", Ġaction , Ġproperty Description For ( problem . trace ), Ġproblem . message ) ĊĠĠĠ Ġon Problem ( problem ) Ċ } ĊĊ Ċ internal Ċ inline Ġfun Ġ< T Ġ: ĠWrite Context , ĠR > ĠT . with Debug Frame ( name : Ġ() Ġ-> ĠString , Ġwrite Action : ĠT . () Ġ-> ĠR ): ĠR Ġ{ ĊĠĠĠ Ġval Ġtracer Ġ= Ġthis . tracer ĊĠĠĠ Ġreturn Ġif Ġ( tracer Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwrite Action () ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġframe Name Ġ= Ġname () ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtracer . open ( frame Name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Action () ĊĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtracer . close ( frame Name ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ