package Ġm ary k . datastore . ro cksdb . processors Ċ Ċ import Ġkotlinx . coroutines . flow . Mutable Shared Flow Ċ import Ġm ary k . core . clock . H LC Ċ import Ġm ary k . core . models . Is Root Values DataModel Ċ import Ġm ary k . core . properties . Property Definitions Ċ import Ġm ary k . core . query . requests . Delete Request Ċ import Ġm ary k . core . query . responses . Delete Response Ċ import Ġm ary k . core . query . responses . statuses . Is Delete ResponseStatus Ċ import Ġm ary k . datastore . ro cksdb . Historic TableColumn F amilies Ċ import Ġm ary k . datastore . ro cksdb . R ocks DB DataStore Ċ import Ġm ary k . datastore . shared . Cache Ċ import Ġm ary k . datastore . shared . Store Action Ċ import Ġm ary k . datastore . shared . updates . Is Update Action Ċ Ċ internal Ġtype alias ĠDelete Store Action < DM , ĠP > Ġ= ĠStore Action < DM , ĠP , ĠDelete Request < DM >, ĠDelete Response < DM >> Ċ internal Ġtype alias ĠAny Delete Store Action Ġ= ĠDelete Store Action < Is Root Values DataModel < Property Definitions >, ĠProperty Definitions > Ċ Ċ /** ĠPro cesses Ġa ĠDelete Request Ġin Ġa Ġ[ store Action ] Ġinto Ġa Ġ[ data Store ] Ġ*/ Ċ internal Ġsuspend Ġfun Ġ< DM Ġ: ĠIs Root Values DataModel < P >, ĠP Ġ: ĠProperty Definitions > Ġprocess Delete Request ( ĊĠĠĠ Ġversion : ĠH LC , ĊĠĠĠ Ġstore Action : ĠDelete Store Action < DM , ĠP >, ĊĠĠĠ Ġdata Store : ĠR ocks DB DataStore , ĊĠĠĠ Ġcache : ĠCache , ĊĠĠĠ Ġupdate Shared Flow : ĠMutable Shared Flow < Is Update Action > Ċ ) Ġ{ ĊĠĠĠ Ġval Ġdelete Request Ġ= Ġstore Action . request ĊĠĠĠ Ġval Ġstatuses Ġ= Ġmutable ListOf < Is Delete ResponseStatus < DM >>() ĊĊĠĠĠ Ġif Ġ( delete Request . keys . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdb Index Ġ= Ġdata Store . getData Model Id ( delete Request . data Model ) ĊĠĠĠĠĠĠĠ Ġval Ġcolumn F amilies Ġ= Ġdata Store . getColumn F amilies ( db Index ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠDelete Ġit Ġfrom Ġhistory Ġif Ġit Ġis Ġa Ġhard Ġdeletion ĊĠĠĠĠĠĠĠ Ġval Ġh istoric Store Index Values Walker Ġ= Ġif Ġ( delete Request . hard Delete Ġ&& Ġcolumn F amilies Ġis ĠH istoric TableColumn F amilies ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠH istoric Store Index Values Walker ( column F amilies , Ġdata Store . default Read Options ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġnull ĊĊĠĠĠĠĠĠĠ Ġfor Ġ( key Ġin Ġdelete Request . keys ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstatuses Ġ+= Ġprocess Delete ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Store , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdelete Request . data Model , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolumn F amilies , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġkey , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġversion , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdb Index , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdelete Request . hard Delete , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġh istoric Store Index Values Walker , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcache , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġupdate Shared Flow ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġstore Action . response . complete ( ĊĠĠĠĠĠĠĠ ĠDelete Response ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstore Action . request . data Model , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstatuses ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) Ċ } Ċ