/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 ĠAmazon . com , ĠInc . Ġor Ġits Ġaffiliates . ĠAll ĠRights ĠReserved . Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "). Ċ Ġ* ĠYou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠA Ġcopy Ġof Ġthe ĠLicense Ġis Ġlocated Ġat Ċ Ġ* Ċ Ġ* Ġ Ġhttp :// aws . amazon . com / apache 2 . 0 Ċ Ġ* Ċ Ġ* Ġor Ġin Ġthe Ġ" license " Ġfile Ġaccompanying Ġthis Ġfile . ĠThis Ġfile Ġ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 Ġcom . amazonaws . amplify . amplify _ datastore Ċ Ċ import Ġandroid . os . Handler Ċ import Ġandroid . os . Looper Ċ import Ġcom . amplify framework . datastore . app sync . Serialized Model Ċ import Ġio . flutter . plugin . common . Event Channel Ċ Ċ class ĠData Store Ob serve Event Stream Handler Ġ: ĠEvent Channel . Stream Handler Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġevent Sink : ĠEvent Channel . Event Sink ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġval Ġhandler Ġ= ĠHandler ( Looper . get Main Looper ()) ĊĠĠĠ Ġoverride Ġfun Ġon Listen ( arg un ents : ĠAny ?, Ġsink : ĠEvent Channel . Event Sink ) Ġ{ ĊĠĠĠĠĠĠĠ Ġevent Sink Ġ= Ġsink ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsend Event ( flutter Event : ĠMap < String , ĠAny >) Ġ{ ĊĠĠĠĠĠĠĠ Ġhandler . post Ġ{ Ġevent Sink ?. success ( flutter Event ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġend Of Stream () Ġ{ ĊĠĠĠĠĠĠĠ Ġevent Sink ?. end Of Stream () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġerror ( errorCode : ĠString , Ġlocalized Message : ĠString ?, Ġdetails : ĠAny ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġhandler . post Ġ{ Ġevent Sink ?. error ( errorCode , Ġlocalized Message , Ġdetails ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Cancel ( p 0 : ĠAny ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġevent Sink Ġ= Ġnull ĊĠĠĠ Ġ} Ċ }