package Ġorg . step ik . android . remote . personal _ dead lines . mapper Ċ Ċ import Ġcom . google . gson . Gson Builder Ċ import Ġorg . step ic . d roid . json Helpers . adapters . UTC Date Adapter Ċ import Ġorg . step ic . d roid . web . storage . model . Storage Record Ċ import Ġorg . step ic . d roid . web . storage . model . Storage Record Wrapped Ċ import Ġorg . step ik . android . data . personal _ dead lines . get Kind Of Record Ċ import Ġorg . step ik . android . domain . personal _ dead lines . model . Dead lines Wrapper Ċ import Ġorg . step ik . android . remote . remote _ storage . model . Storage Request Ċ import Ġorg . step ik . android . remote . remote _ storage . model . Storage Response Ċ import Ġjava . util . Date Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠDead lines Mapper Ċ @ Inject Ċ constructor () Ġ{ ĊĠĠĠ Ġprivate Ġval Ġgson Ġ= ĠGson Builder () ĊĠĠĠĠĠĠĠ Ġ. register Type Adapter ( Date :: class . java , ĠUTC Date Adapter ()) ĊĠĠĠĠĠĠĠ Ġ. create () ĊĊĠĠĠ Ġfun Ġmap To Storage Request ( dead lines : ĠDead lines Wrapper , Ġrecord Id : ĠLong ? Ġ= Ġnull ): ĠStorage Request Ġ= ĊĠĠĠĠĠĠĠ ĠStorage Request ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStorage Record Wrapped ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġrecord Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġkind Ġ= Ġget Kind Of Record ( dead lines . course ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Ġ= Ġgson . toJson Tree ( dead lines ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠ Ġfun Ġmap To Storage Request ( record : ĠStorage Record < Dead lines Wrapper >): ĠStorage Request Ġ= ĊĠĠĠĠĠĠĠ ĠStorage Request ( record . wrap ( gson )) ĊĊĠĠĠ Ġfun Ġmap To Storage Record ( response : ĠStorage Response ): ĠStorage Record < Dead lines Wrapper >? Ġ= ĊĠĠĠĠĠĠĠ Ġresponse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. records ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. first OrNull () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . let (:: unwrap Storage Record ) ĊĊĠĠĠ Ġfun Ġmap To Storage Record List ( response : ĠStorage Response ): ĠList < Storage Record < Dead lines Wrapper >> Ġ= ĊĠĠĠĠĠĠĠ Ġresponse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. records ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map NotNull (:: unwrap Storage Record ) ĊĊĠĠĠ Ġprivate Ġfun Ġunwrap Storage Record ( record : ĠStorage Record Wrapped ): ĠStorage Record < Dead lines Wrapper >? Ġ= ĊĠĠĠĠĠĠĠ Ġrecord ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. unwrap < Dead lines Wrapper >( gson ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. take If Ġ{ Ġit . data . dead lines Ġ!= Ġnull Ġ} Ċ }