/** Ċ * ĠCopyright ĠS or am its u ĠCo ., ĠLtd . ĠAll ĠRights ĠReserved . Ċ * ĠSPDX - License - Identifier : ĠGPL - 3 . 0 Ċ */ Ċ Ċ package Ġjp . co . sor am its u . feature _ main _ impl . presentation . vot esh istory . map pers Ċ Ċ import Ġjp . co . sor am its u . feature _ main _ impl . presentation . vot esh istory . model . Votes History Item Ċ import Ġjp . co . sor am its u . feature _ vot able _ api . domain . model . Votes History Ċ import Ġjava . math . BigDecimal Ċ import Ġjava . util . ArrayList Ċ import Ġjava . util . Date Ċ Ċ class ĠV otes History Mapper Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġto Vm List ( history Remote : ĠList < Votes History >): ĠList < Votes History Item > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlist Ġ= ĠArrayList < Votes History Item >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhistory Remote . forEach Ġ{ Ġlist . add ( to Vm ( it )) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġlist ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġto Vm ( entity : ĠV otes History ): ĠV otes History Item Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġoperation Ġ= Ġif Ġ( entity . votes Ġ> ĠBigDecimal . ZERO ) Ġ'+' Ġelse Ġ'-' ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠV otes History Item ( entity . message , Ġoperation , Ġmap Created Time (( entity . timestamp . toDouble ())), Ġentity . votes . abs ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġmap Created Time ( created Time : ĠDouble ): ĠDate Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtimestamp Ġ= Ġ( created Time Ġ* Ġ 1 0 0 0 ). to Long () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠDate ( timestamp ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }