public UseCases Compose( ApplicationEventsPresenter applicationEventsPresenter, DiagnosticMessages diagnosticMessages) { _watcher = FileSystemWatchers(); var applicationUseCases = Synchronized( ApplicationUseCases(diagnosticMessages, PathOperationsContext( applicationEventsPresenter, diagnosticMessages))); _watcher.ReportChangesTo(FilteredWith(_filters, applicationUseCases)); return(applicationUseCases); }