package Ġcom . f ry bits . har mony . app . database Ċ Ċ import Ġandroidx . room . Type Converter Ċ import Ġjava . nio . ByteBuffer Ċ import Ġjava . util . UUID Ċ Ċ /* Ċ Ġ* Ġ ĠCopyright Ġ 2 0 2 1 ĠP ablo ĠB ax ter Ċ Ġ* Ċ Ġ* Ġ Ġ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 . Ċ Ġ* Ċ Ġ* ĠCreated Ġby ĠP ablo ĠB ax ter Ġ( Github : Ġp ab lob ax ter ) Ċ Ġ* Ġhttps :// github . com / p ab lob ax ter / Har mony Ċ Ġ*/ Ċ Ċ class ĠTest Converters Ġ{ ĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġfrom Bytes ( byteArray : ĠByteArray ): ĠLong Array Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġarray Ġ= Ġarray ListOf < Long >() ĊĠĠĠĠĠĠĠ Ġval Ġbuffer Ġ= ĠByteBuffer . wrap ( byteArray ) ĊĠĠĠĠĠĠĠ Ġwhile Ġ( buffer . has Remaining ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarray . add ( buffer . long ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġarray . to Long Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġto Bytes ( long Array : ĠLong Array ): ĠByteArray Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbuffer Ġ= ĠByteBuffer . allocate ( Long . SIZE _ BYTES Ġ* Ġlong Array . size ) ĊĠĠĠĠĠĠĠ Ġlong Array . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuffer . put Long ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġbuffer . array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġfrom UUID ( uuid : ĠUUID ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġuuid . toString () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġto UUID ( name : ĠString ): ĠUUID Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠUUID . fromString ( name ) ĊĠĠĠ Ġ} Ċ } Ċ