From f4e633beb4faebe1eaced7ea64f3903ecc57f08b Mon Sep 17 00:00:00 2001 From: Bruno Windels <274386+bwindels@users.noreply.github.com> Date: Mon, 26 Sep 2022 15:24:14 +0200 Subject: [PATCH] support onfirstsubscribe callback in ROV will use it to start polling for turnServer updates --- src/observable/value/RetainedObservableValue.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/observable/value/RetainedObservableValue.ts b/src/observable/value/RetainedObservableValue.ts index edfb6c15..16058f8e 100644 --- a/src/observable/value/RetainedObservableValue.ts +++ b/src/observable/value/RetainedObservableValue.ts @@ -17,15 +17,17 @@ limitations under the License. import {ObservableValue} from "./ObservableValue"; export class RetainedObservableValue extends ObservableValue { - private _freeCallback: () => void; - constructor(initialValue: T, freeCallback: () => void) { + constructor(initialValue: T, private freeCallback: () => void, private startCallback: () => void = () => {}) { super(initialValue); - this._freeCallback = freeCallback; + } + + onSubscribeFirst() { + this.startCallback(); } onUnsubscribeLast() { super.onUnsubscribeLast(); - this._freeCallback(); + this.freeCallback(); } }