package Ġorg . co epi . android . t cn Ċ Ċ import Ġio . realm . kotlin . createObject Ċ import Ġio . realm . kotlin . one Of Ċ import Ġio . realm . kotlin . where Ċ import Ġorg . co epi . android . domain . Unix Time Ċ import Ġorg . co epi . android . extensions . hex To ByteArray Ċ import Ġorg . co epi . android . repo . Realm Provider Ċ import Ġorg . co epi . android . system . log . log Ċ Ċ class ĠRealm T cn Dao ( private Ġval Ġrealm Provider : ĠRealm Provider ) Ġ: ĠT cn Dao Ġ{ ĊĠĠĠ Ġprivate Ġval Ġrealm Ġget () Ġ= Ġrealm Provider . realm ĊĊĠĠĠ Ġoverride Ġfun Ġall (): ĠList < Received T cn > Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠNote : ĠNot Ġideal . ĠWe 'll Ġmost Ġlikely Ġdrop ĠRealm , Ġso Ġok Ġfor Ġnow . ĊĠĠĠĠĠĠĠ Ġrealm . refresh () ĊĊĠĠĠĠĠĠĠ Ġreturn Ġrealm . where < Realm Received T cn >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. findAll () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . to Received T cn () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmatch Tc ns ( start : ĠUnix Time , Ġend : ĠUnix Time , Ġtc ns : ĠArray < String >): ĠList < Received T cn > Ġ= ĊĠĠĠĠĠĠĠ Ġrealm . where < Realm Received T cn >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. greater Than OrEqualTo (" timestamp ", Ġstart . value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. and () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. less Than OrEqualTo (" timestamp ", Ġend . value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. and () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. one Of (" t cn ", Ġtc ns ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. findAll () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . to Received T cn () Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġfind T cn ( t cn : ĠT cn ): ĠReceived T cn ? Ġ= ĊĠĠĠĠĠĠĠ Ġrealm . where < Realm Received T cn >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. equalTo (" t cn ", Ġt cn . to Hex ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. findAll () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. first OrNull () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . to Received T cn () ĊĊĠĠĠ Ġoverride Ġfun Ġinsert ( t cn : ĠReceived T cn ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( find T cn ( t cn . t cn ) Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlog . v (" TC N Ġwas Ġalready Ġin ĠDB : Ġ$ t cn ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġrealm . execute Transaction Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrealm Obj Ġ= Ġrealm . createObject < Realm Received T cn >( t cn . t cn . to Hex ()) Ġ// ĠCreate Ġa Ġnew Ġobject ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrealm Obj . timestamp Ġ= Ġt cn . timestamp . value ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠRealm Received T cn . to Received T cn () Ġ= ĊĠĠĠĠĠĠĠ ĠReceived T cn ( T cn ( t cn . hex To ByteArray ()), ĠUnix Time . from Value ( timestamp )) Ċ } Ċ