Convert to using an Observer.