package Ġorg . ost el co . sim cards . inventory Ċ Ċ import Ġarrow . core . Either Ċ import Ġorg . ost el co . prime . sim manager . Sim Manager Error Ċ import Ġorg . ost el co . sim cards . h ss . H ss Entry Ċ import Ġorg . ost el co . sim cards . profile vendors . Profile Vendor Adapter Datum ĊĊ Ċ interface ĠSim Inventory DB Wrapper Ġ{ ĊĊĠĠĠ Ġfun Ġget Sim Profile ById ( id : ĠLong ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġfun Ġget Sim Profile By I cc id ( ic cid : ĠString ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġfun Ġget Sim Profile By I msi ( im si : ĠString ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġfun Ġget Sim Profile By Ms is dn ( ms is dn : ĠString ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġfun Ġfind Next Non Provision ed Sim Profile For H ss ( h ss Id : ĠLong , Ġprofile : ĠString ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġfun Ġfind Next Ready ToUse Sim Profile For H ss ( h ss Id : ĠLong , Ġprofile : ĠString ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġfun ĠgetAll Profile V endors (): ĠEither < Sim Manager Error , ĠList < Profile Vendor Adapter Datum >> ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSets Ġthe ĠE ID Ġvalue Ġof Ġa ĠSIM Ġentry Ġ( profile ). ĊĠĠĠĠ Ġ* Ġ@ param Ġic cid Ġ ĠSIM Ġentry Ġto Ġupdate ĊĠĠĠĠ Ġ* Ġ@ param Ġe id Ġ Ġthe Ġe id Ġvalue ĊĠĠĠĠ Ġ* Ġ@ return Ġupdated ĠSIM Ġentry ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset E id Of Sim Profile By I cc id ( ic cid : ĠString , Ġe id : ĠString ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSets Ġthe ĠE ID Ġvalue Ġof Ġa ĠSIM Ġentry Ġ( profile ). ĊĠĠĠĠ Ġ* Ġ@ param Ġid Ġ Ġrow Ġto Ġupdate ĊĠĠĠĠ Ġ* Ġ@ param Ġe id Ġ Ġthe Ġe id Ġvalue ĊĠĠĠĠ Ġ* Ġ@ return Ġupdated ĠSIM Ġentry ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset E id Of Sim Profile ( id : ĠLong , Ġe id : ĠString ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġ/* ĊĠĠĠĠ Ġ* ĠState Ġinformation . ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSet Ġthe Ġentity Ġto Ġbe Ġmarked Ġas Ġ" active " Ġin Ġthe ĠH SS , Ġthen Ġreturn Ġthe ĊĠĠĠĠ Ġ* ĠSIM Ġentry . ĊĠĠĠĠ Ġ* Ġ@ param Ġid Ġrow Ġto Ġupdate ĊĠĠĠĠ Ġ* Ġ@ param Ġstate Ġnew Ġstate Ġfrom ĠH SS Ġservice Ġinteraction ĊĠĠĠĠ Ġ* Ġ@ return Ġupdated Ġrow Ġor Ġnull Ġon Ġno Ġmatch ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset H ss State ( id : ĠLong , Ġstate : ĠH ss State ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSet Ġthe Ġprovision Ġstate Ġof Ġa ĠSIM Ġentry , Ġthen Ġreturn Ġthe Ġentry . ĊĠĠĠĠ Ġ* Ġ@ param Ġid Ġrow Ġto Ġupdate ĊĠĠĠĠ Ġ* Ġ@ param Ġstate Ġnew Ġstate Ġfrom ĠH SS Ġservice Ġinteraction ĊĠĠĠĠ Ġ* Ġ@ return Ġupdated Ġrow Ġor Ġnull Ġon Ġno Ġmatch ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Provision State ( id : ĠLong , Ġstate : ĠPro vision State ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUpdates Ġstate Ġof ĠSIM Ġprofile Ġand Ġreturns Ġthe Ġupdated Ġprofile . ĊĠĠĠĠ Ġ* Ġ@ param Ġid Ġ Ġrow Ġto Ġupdate ĊĠĠĠĠ Ġ* Ġ@ param Ġstate Ġ Ġnew Ġstate Ġfrom ĠS MD P + Ġservice Ġinteraction ĊĠĠĠĠ Ġ* Ġ@ return Ġupdated Ġrow Ġor Ġnull Ġon Ġno Ġmatch ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Sm Dp Plus State ( id : ĠLong , Ġstate : ĠSm Dp Plus State ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUpdates Ġstate Ġof ĠSIM Ġprofile Ġand Ġreturns Ġthe Ġupdated Ġprofile . ĊĠĠĠĠ Ġ* Ġ@ param Ġic cid Ġ ĠSIM Ġentry Ġto Ġupdate ĊĠĠĠĠ Ġ* Ġ@ param Ġstate Ġ Ġnew Ġstate Ġfrom ĠS MD P + Ġservice Ġinteraction ĊĠĠĠĠ Ġ* Ġ@ return Ġupdated Ġrow Ġor Ġnull Ġon Ġno Ġmatch ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Sm Dp Plus State Using I cc id ( ic cid : ĠString , Ġstate : ĠSm Dp Plus State ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUpdates Ġstate Ġof ĠSIM Ġprofile Ġand Ġreturns Ġthe Ġupdated Ġprofile . ĊĠĠĠĠ Ġ* ĠUpdates Ġstate Ġand Ġthe Ġ' matching - id ' Ġof Ġa ĠSIM Ġprofile Ġand Ġreturn ĊĠĠĠĠ Ġ* Ġthe Ġupdated Ġprofile . ĊĠĠĠĠ Ġ* Ġ@ param Ġid Ġ Ġrow Ġto Ġupdate ĊĠĠĠĠ Ġ* Ġ@ param Ġstate Ġ Ġnew Ġstate Ġfrom ĠS MD P + Ġservice Ġinteraction ĊĠĠĠĠ Ġ* Ġ@ param Ġmatching Id Ġ ĠSM - DP + ĠES 2 Ġ' matching - id ' Ġto Ġbe Ġsent Ġto Ġhand set ĊĠĠĠĠ Ġ* Ġ@ return Ġupdated Ġrow Ġor Ġnull Ġon Ġno Ġmatch ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Sm Dp Plus State And Matching Id ( id : ĠLong , Ġstate : ĠSm Dp Plus State , Ġmatching Id : ĠString ): ĠEither < Sim Manager Error , ĠSim Entry > ĊĊĠĠĠ Ġ/* ĊĠĠĠĠ Ġ* ĠH SS Ġand ĠSM - DP + Ġ' adapters '. ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġfind Sim Vendor For H ss Permissions ( profile Vendor Id : ĠLong , Ġh ss Id : ĠLong ): ĠEither < Sim Manager Error , ĠList < Long >> ĊĊĠĠĠ Ġfun Ġstore Sim Vendor For H ss Permission ( profile Vendor Id : ĠLong , Ġh ss Id : ĠLong ): ĠEither < Sim Manager Error , ĠInt > ĊĊĠĠĠ Ġfun Ġadd H ss Entry ( name : ĠString ): ĠEither < Sim Manager Error , ĠInt > ĊĊĠĠĠ Ġfun Ġget H ss Entry ByName ( name : ĠString ): ĠEither < Sim Manager Error , ĠH ss Entry > ĊĊĠĠĠ Ġfun Ġget H ss Entry ById ( id : ĠLong ): ĠEither < Sim Manager Error , ĠH ss Entry > ĊĊĠĠĠ Ġfun Ġadd Profile Vendor Datum Adapter ( name : ĠString ): ĠEither < Sim Manager Error , ĠInt > ĊĊĠĠĠ Ġfun Ġget Profile Vendor Adapter Datum ByName ( name : ĠString ): ĠEither < Sim Manager Error , ĠProfile Vendor Adapter Datum > ĊĊĠĠĠ Ġfun Ġget Profile Vendor Adapter Datum ById ( id : ĠLong ): ĠEither < Sim Manager Error , ĠProfile Vendor Adapter Datum > ĊĊĠĠĠ Ġ/* ĊĠĠĠĠ Ġ* ĠBatch Ġhandling . ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġinsert All ( entries : ĠIterator < Sim Entry >): ĠEither < Sim Manager Error , ĠUnit > ĊĊĠĠĠ Ġfun Ġcreate New Sim Import Batch ( importer : ĠString , Ġh ss Id : ĠLong , Ġprofile Vendor Id : ĠLong ): ĠEither < Sim Manager Error , ĠInt > ĊĊĠĠĠ Ġfun Ġupdate Batch State ( id : ĠLong , Ġsize : ĠLong , Ġstatus : ĠString , Ġended At : ĠLong ): ĠEither < Sim Manager Error , ĠInt > ĊĊĠĠĠ Ġfun Ġget Batch Info ( id : ĠLong ): ĠEither < Sim Manager Error , ĠSim Import Batch > ĊĊĠĠĠ Ġ/* ĊĠĠĠĠ Ġ* ĠReturns Ġthe Ġ' id ' Ġof Ġthe Ġlast Ġinsert , Ġregardless Ġof Ġtable . ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġlast Inserted Row Id (): ĠEither < Sim Manager Error , ĠLong > ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠFind Ġall Ġthe Ġdifferent ĠH SS es Ġthat Ġare Ġpresent . ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġget H ss Entries (): ĠEither < Sim Manager Error , ĠList < H ss Entry >> ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠFind Ġthe Ġnames Ġof Ġprofiles Ġthat Ġare Ġassociated Ġwith ĊĠĠĠĠ Ġ* Ġa Ġparticular ĠH SS . ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġget Profile Names For H ss ById ( h ss Id : ĠLong ): ĠEither < Sim Manager Error , ĠList < String >> ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠGet Ġkey Ġnumbers Ġfrom Ġa Ġparticular Ġnamed ĠSim Ġprofile . ĊĠĠĠĠ Ġ* ĠNOTE : ĠThis Ġmethod Ġis Ġintended Ġas Ġan Ġinternal Ġhelper Ġmethod Ġfor Ġget Profile Stats , Ġits Ġsignature ĊĠĠĠĠ Ġ* Ġcan Ġchange Ġat Ġany Ġtime , Ġso Ġdon 't Ġuse Ġit Ġunless Ġyou Ġreally Ġknow Ġwhat Ġyou 're Ġdoing . ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġget Profile Stats As KeyValuePair s ( h ss Id : ĠLong , Ġsim Profile : ĠString ): ĠEither < Sim Manager Error , ĠList < KeyValuePair >> ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠReser ve Ġnumbers Ġending Ġin Ġ" 0 0 0 0 " Ġand Ġ" 9 9 9 9 " Ġas Ġthey Ġare Ġ" golden Ġnumbers " Ġthat ĊĠĠĠĠ Ġ* Ġrequire Ġspecial Ġhandling Ġin Ġsome Ġj urisdi ctions . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġreserve Gold en Numbers For Batch ( batch Id : ĠLong ): ĠEither < Sim Manager Error , ĠInt > ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠReturn Ġa Ġlist Ġof Ġsim ĠProfile Ġnames Ġassociated Ġwith ĠH SS es . Ġ ĠReturn Ġboth Ġthe ĊĠĠĠĠ Ġ* ĠH SS Id Ġ( database Ġinternal ĠID ), Ġand Ġthe Ġpublic Ġname Ġof Ġthe ĠH SS . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġget H ss Profile Name Pairs (): Ġ ĠEither < Sim Manager Error , ĠList < H ss Profile Id Name >> Ċ } Ċ Ċ /** Ċ Ġ* ĠA Ġdata Ġclass Ġused Ġto Ġlist Ġsim Ġprofile Ġnames Ġand Ġ Ġdatabase ĠIDs Ġof Ġthe ĠH SS es Ġthey Ġare Ġassociated Ġwith . Ċ Ġ*/ Ċ data Ġclass ĠH ss Profile Id Name ( val Ġh ss Id : Long , Ġval Ġh ss Name : ĠString , Ġval Ġsim Profile Name : ĠString ) Ċ