Skip to content

Instantly share code, notes, and snippets.

@eofster
Created December 15, 2015 13:13
Show Gist options
  • Save eofster/1a0268ce871364ca9145 to your computer and use it in GitHub Desktop.
Save eofster/1a0268ce871364ca9145 to your computer and use it in GitHub Desktop.
GPS track summary view event handler
class TrackSummaryViewEventHandler {
let interactorFactory: InteractorFactory
let presenterFactory: PresenterFactory
init(interactorFactory: InteractorFactory, presenterFactory: PresenterFactory) {
self.interactorFactory = interactorFactory
self.presenterFactory = presenterFactory
}
}
extension TrackSummaryViewEventHandler: TrackSummaryViewObserver {
func viewShouldReloadData(view: TrackSummaryView) {
let interactor = interactorFactory.createTrackSummaryInteractor(
presenterFactory.createTrackSummaryPresenterWithOutput(view)
)
interactor.execute()
}
func view(view: TrackSummaryView, didChangeTrackName name: String, forTrackWithID trackID: Int) {
interactorFactory.createTrackNameUpdateInteractor(trackID, name: name).execute()
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment