trying to resolve leak
Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
parent
1d30735948
commit
166ecf461d
@ -45,10 +45,12 @@ extension Publishers {
|
||||
private func subscribe() {
|
||||
guard let publisher = modelHandler?.modelPublisher else { return }
|
||||
|
||||
publisher.debounce(for: .seconds(Constants.ModelStateDebounce), scheduler: RunLoop.main).sink { [weak self] viewModel in
|
||||
guard let self else { return }
|
||||
_ = self.subscriber?.receive(viewModel)
|
||||
}.store(in: &subscribers)
|
||||
publisher
|
||||
.debounce(for: .seconds(Constants.ModelStateDebounce), scheduler: RunLoop.main)
|
||||
.sink { [weak self] viewModel in
|
||||
_ = self?.subscriber?.receive(viewModel)
|
||||
}
|
||||
.store(in: &subscribers)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -59,8 +61,10 @@ extension ModelHandlerable {
|
||||
}
|
||||
|
||||
public func createBinding(with subject: CurrentValueSubject<ModelType, Never>, storeIn subscriptions: inout Set<AnyCancellable>) {
|
||||
handlerPublisher().sink { (value) in
|
||||
subject.send(value)
|
||||
}.store(in: &subscriptions)
|
||||
handlerPublisher()
|
||||
.sink { (value) in
|
||||
subject.send(value)
|
||||
}
|
||||
.store(in: &subscriptions)
|
||||
}
|
||||
}
|
||||
|
||||
@ -30,15 +30,17 @@ extension ModelHandlerable {
|
||||
}
|
||||
}
|
||||
|
||||
public func setupUpdateView() {
|
||||
modelPublisher.filter { [weak self] viewModel in
|
||||
guard let self else { return false}
|
||||
return self.shouldUpdateView(viewModel: viewModel)
|
||||
|
||||
}.debounce(for: .seconds(Constants.ModelStateDebounce), scheduler: RunLoop.main).sink { [weak self] viewModel in
|
||||
guard let self else { return }
|
||||
self.updateView(viewModel: viewModel)
|
||||
|
||||
}.store(in: &subscribers)
|
||||
public func setupUpdateView() {
|
||||
modelPublisher
|
||||
.filter { [weak self] viewModel in
|
||||
return self?.shouldUpdateView(viewModel: viewModel) ?? false
|
||||
|
||||
}
|
||||
.debounce(for: .seconds(Constants.ModelStateDebounce), scheduler: RunLoop.main)
|
||||
.sink { [weak self] viewModel in
|
||||
self?.updateView(viewModel: viewModel)
|
||||
|
||||
}
|
||||
.store(in: &subscribers)
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user