     }
 
     private var eventsObservers = [EventsServiceObserver]()
-    func add(_ observer: EventsServiceObserver) {
-        eventsObservers.append(observer)
-        observer.eurofurenceApplicationDidUpdateRunningEvents(to: makeRunningEvents())
-        observer.eurofurenceApplicationDidUpdateUpcomingEvents(to: [])
-
+    fileprivate func reconstituteEventsFromDataStore() {
         let events = dataStore.getSavedEvents()
         let rooms = dataStore.getSavedRooms()
         let tracks = dataStore.getSavedTracks()

                              isFavourite: false)
            }
        }

        observer.eurofurenceApplicationDidUpdateEvents(to: self.events)
    }

    private func makeRunningEvents() -> [Event2] {

                                                                      clock: clock)

        imageCache = ImagesCache(eventBus: eventBus, imageRepository: imageRepository)

        reconstituteEventsFromDataStore()
    }

    func resolveDataStoreState(completionHandler: @escaping (EurofurenceDataStoreState) -> Void) {
