package Ġcom . nek 1 2 . android utils . room Ċ Ċ import Ġandroid . os . Build Ċ import Ġandroidx . annotation . Requires Api Ċ import Ġandroidx . room . Type Converter Ċ import Ġandroidx . room . Type Converters Ċ import Ġjava . time . Duration Ċ import Ġjava . time . Instant Ċ import Ġjava . util .* Ċ Ċ @ Requires Api ( Build . VERSION _ CODES . O ) Ċ private Ġfun Ġc apped ( instant : ĠInstant ): ĠInstant Ġ{ ĊĠĠĠ Ġval Ġinst ants Ġ= ĠarrayOf ( Instant . MIN , Ġinstant , ĠInstant . MAX ) ĊĠĠĠ ĠArrays . sort ( inst ants ) ĊĠĠĠ Ġreturn Ġinst ants [ 1 ] Ċ } Ċ Ċ /** Ċ Ġ* ĠType Ġconverter s Ġthat Ġprovide Ġutility Ġconversions Ġfor Ġyou : Ċ Ġ* ĠDuration , ĠUUID , ĠInstant Ċ Ġ*/ Ċ @ Type Converters Ċ @ Requires Api ( Build . VERSION _ CODES . O ) Ċ class ĠRoom Converters Ġ{ ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġto Duration ( seconds : ĠLong ?): ĠDuration ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġseconds ?. let Ġ{ ĠDuration . of Seconds ( it ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġfrom Duration ( value : ĠDuration ?): ĠLong ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġvalue ?. seconds ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġfrom Instant ( instant : ĠInstant ?): ĠLong ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinstant ?. let Ġ{ Ġc apped ( it ). to Epoch Milli () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġto Instant ( millis Since Epoch : ĠLong ?): ĠInstant ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmillis Since Epoch ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠInstant . of Epoch Milli ( millis Since Epoch ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ