package Ġio . fluid sonic . rap tor Ċ Ċ import Ġkotlinx . coroutines .* ĊĊ Ċ public Ġobject ĠR apt or Lifecycle Feature Ġ: ĠR apt or Feature Ġ{ ĊĊ ĉ override Ġval Ġid : ĠR apt or Feature Id Ġ= Ġr apt or Lifecycle Feature Id ĊĊĊ ĉ override Ġfun ĠR apt or Feature Configuration Scope . begin Configuration () Ġ{ Ċĉ ĉ component Registry . register ( R apt or Lifecycle Component . Key , ĠR apt or Lifecycle Component ()) ĊĊĉ ĉ if Installed ( rap tor DI Feature Id ) Ġ{ Ċĉĉ ĉ di Ġ{ Ċĉĉĉ ĉ provide Ġ{ Ġget < R apt or Context >() [ Default R apt or Lifecycle . Property Key ] !!. coroutine Context Ġ} Ċĉĉĉ ĉ provide Ġ{ ĠCor outine Scope ( get ()) Ġ} Ċĉĉ ĉ } Ċĉ ĉ } Ċ ĉ } Ċ } ĊĊ Ċ public Ġconst Ġval Ġr apt or Lifecycle Feature Id : ĠR apt or Feature Id Ġ= Ġ" rap tor . lifecycle " ĊĊ Ċ public Ġval ĠR apt or . lifecycle : ĠR apt or Lifecycle Ċ ĉ get () Ġ= Ġproperties [ Default R apt or Lifecycle . Property Key ] Ċĉ ĉ ?: Ġerror (" You Ġmust Ġinstall Ġ${ R apt or Lifecycle Feature :: class . simple Name } Ġfor Ġenabling Ġlifecycle Ġfunctionality .") Ċ