@@ -196,6 +196,7 @@ internal final class InternalDefaultLiveCounter: Sendable {
196196 objectMessageSerialTimestamp: objectMessageSerialTimestamp,
197197 objectsPool: & objectsPool,
198198 logger: logger,
199+ clock: clock,
199200 userCallbackQueue: userCallbackQueue,
200201 )
201202 }
@@ -294,6 +295,7 @@ internal final class InternalDefaultLiveCounter: Sendable {
294295 objectMessageSerialTimestamp: Date ? ,
295296 objectsPool: inout ObjectsPool ,
296297 logger: Logger ,
298+ clock: SimpleClock ,
297299 userCallbackQueue: DispatchQueue ,
298300 ) {
299301 guard let applicableOperation = liveObjectMutableState. canApplyOperation ( objectMessageSerial: objectMessageSerial, objectMessageSiteCode: objectMessageSiteCode, logger: logger) else {
@@ -325,6 +327,18 @@ internal final class InternalDefaultLiveCounter: Sendable {
325327 let update = applyCounterIncOperation ( operation. counterOp)
326328 // RTLC7d2a
327329 liveObjectMutableState. emit ( update, on: userCallbackQueue)
330+ case . known( . objectDelete) :
331+ let dataBeforeApplyingOperation = data
332+
333+ // RTLC7d4
334+ applyObjectDeleteOperation (
335+ objectMessageSerialTimestamp: objectMessageSerialTimestamp,
336+ logger: logger,
337+ clock: clock,
338+ )
339+
340+ // RTLC7d4a
341+ liveObjectMutableState. emit ( . update( . init( amount: - dataBeforeApplyingOperation) ) , on: userCallbackQueue)
328342 default :
329343 // RTLC7d3
330344 logger. log ( " Operation \( operation) has unsupported action for LiveCounter; discarding " , level: . warn)
0 commit comments