added handler publisher

Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
Matt Bruce 2022-08-15 16:48:28 -05:00
parent b9dda3ba1c
commit 0e4bec4327

View File

@ -79,23 +79,18 @@ class RadioButtonViewController: UIViewController, StoryboardInitable {
}
func setupBinding() {
//create the subject
let modelSubject = CurrentValueSubject<DefaultRadioButtonGroupModel, Never>(model)
//bind
radioButtonGroup.createBinding(with: modelSubject, storeIn: &subscribers)
//update the model
//print out on subject changes
modelSubject
.debounce(for: .seconds(Constants.ModelStateDebounce), scheduler: RunLoop.main)
radioButtonGroup.handlerPublisher()
.sink { [weak self] updatedModel in
print("before RadioButtonViewController local selectedModel Id: \(self?.model.selectedModel?.id)")
self?.model = updatedModel
self?.showErrorSwitch.isOn = updatedModel.hasError
print("RadioButtonViewController hasError: \(updatedModel.hasError)")
if let selectedModel = updatedModel.selectedModel {
print("RadioButtonViewController selectedModel Id: \(selectedModel.id)")
print("after RadioButtonViewController local selectedModel Id: \(self?.model.selectedModel?.id)")
}
}
.store(in: &subscribers)