package Ġcz . m ro cz is . net monster . core . feature . post process Ċ Ċ import Ġcz . m ro cz is . net monster . core . model . cell . Cell C dma Ċ import Ġcz . m ro cz is . net monster . core . model . cell . IC ell Ċ import Ġcz . m ro cz is . net monster . core . model . connection . Primary Connection Ċ Ċ /** Ċ Ġ* ĠC DMA Ġcells Ġdo Ġnot Ġhave ĠPL MN Ġ( M CC , ĠM NC ) Ġby Ġdesign . ĠHowever Ġwhen Ġdevice Ġis Ġalso Ġconnected Ċ Ġ* Ġto Ġother Ġnetwork Ġ( in Ġmost Ġcases Ġit 's ĠL TE ) Ġthen ĠC DMA Ġand ĠL TE Ġcells Ġare Ġboth Ġlisted Ġas Ġserving Ċ Ġ* Ġunder Ġone Ġsubscription Ġid . Ċ Ġ* Ċ Ġ* ĠThis Ġclass Ġgr abs ĠPL MN Ġfrom Ġother Ġcell Ġand Ġassigns Ġit Ġto ĠC DMA Ġcell Ġif Ġit 's Ġnot Ġalready Ġassigned Ċ Ġ*/ Ċ class ĠC dma Pl mn Post processor Ġ: ĠI Cell Post processor Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġpost process ( list : ĠList < IC ell >): ĠList < IC ell > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsub To Network Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist . groupBy Ġ{ Ġit . subscriptionId Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Values Ġ{ Ġ(_, Ġcells ) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcells ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map NotNull Ġ{ Ġcell Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcell . network . take If Ġ{ Ġcell . connection Status Ġis ĠPrimary Connection Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. distinct () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. let Ġ{ Ġnetworks Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( networks . size Ġ== Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnetworks [ 0 ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġlist . map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it Ġis ĠCell C dma Ġ&& Ġit . network Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . copy ( network Ġ= Ġsub To Network [ it . subscriptionId ]) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }