package Ġcom . en ec uum . wl . data . li ved ata Ċ Ċ import Ġandroid . util . Log Ċ import Ġandroidx . lifecycle . Lifecycle Owner Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . lifecycle . Observer Ċ import Ġcom . en ec uum . wl . Build Config Ċ import Ġcom . en ec uum . lib . api . Token Balance Ċ Ċ interface ĠAmount LiveData Repository Ġ{ ĊĠĠĠ Ġfun Ġobserve Amount ( owner : ĠLifecycle Owner , Ġobserver : ĠObserver < Token Balance >) ĊĠĠĠ Ġfun Ġget Amount (): ĠString ĊĠĠĠ Ġfun Ġset Amount ( tokens Balance : ĠList < Token Balance >) ĊĠĠĠ Ġfun Ġclear Observer ( owner : ĠLifecycle Owner ) Ċ } Ċ Ċ class ĠAmount LiveData Ġ: ĠMutable LiveData < Token Balance >(), ĠAmount LiveData Repository Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġobserve Amount ( owner : ĠLifecycle Owner , Ġobserver : ĠObserver < Token Balance >) Ġ{ ĊĠĠĠĠĠĠĠ Ġobserve ( owner , Ġobserver ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġclear Observer ( owner : ĠLifecycle Owner ) Ġ{ ĊĠĠĠĠĠĠĠ Ġremove Observer s ( owner ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Amount ( tokens Balance : ĠList < Token Balance >) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġtoken Balance Ġ= Ġtokens Balance . find Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . token Ġ== ĠBuild Config . TOKEN ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġpost Value ( token Balance ) ĊĠĠĠĠĠĠĠ ĠLog . d (" Balance Ġchange ", Ġ" New Ġamount Ġis Ġ${ token Balance ?. amount }") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Amount (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue !!. amount . toString () Ġ?: Ġ" ..." ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" ..." ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }