private void WaitUntilNotBusy(PresetGatherer gatherer) { while (gatherer.Busy) { Thread.Sleep(100); } }
public static ExpectedEvent ExpectNewDataAvailable(this PresetGatherer gatherer) { var x = new ExpectedEvent(); gatherer.NewDataAvailable += x.Event; return(x); }
/// ------------------------------------------------------------------------------------ public NewComponentFile(string pathToAnnotatedFile, IEnumerable <FileType> fileTypes, IEnumerable <ComponentRole> componentRoles, XmlFileSerializer xmlFileSerializer, IProvideAudioVideoFileStatistics statisticsProvider, PresetGatherer presetProvider, FieldUpdater fieldUpdater) : base(null, pathToAnnotatedFile, fileTypes, componentRoles, xmlFileSerializer, statisticsProvider, presetProvider, fieldUpdater) { _fileTypes = fileTypes; Selected = true; }
/// ------------------------------------------------------------------------------------ public ComponentFileFactory(IEnumerable <FileType> fileTypes, IEnumerable <ComponentRole> componentRoles, XmlFileSerializer xmlFileSerializer, IProvideAudioVideoFileStatistics statisticsProvider, PresetGatherer presetProvider, FieldUpdater fieldUpdater) { _fileTypes = fileTypes; _componentRoles = componentRoles; _xmlFileSerializer = xmlFileSerializer; _statisticsProvider = statisticsProvider; _presetProvider = presetProvider; _fieldUpdater = fieldUpdater; }
/// ------------------------------------------------------------------------------------ public void Dispose() { if (_annotationFile != null) { _annotationFile.Dispose(); } _annotationFile = null; _xmlFileSerializer = null; _statisticsProvider = null; _presetProvider = null; _fieldUpdater = null; MetaDataFieldValues = null; ParentElement = null; }
/// ------------------------------------------------------------------------------------ public ProjectContext(string projectSettingsPath, IContainer parentContainer) { var rootDirectoryPath = Path.GetDirectoryName(projectSettingsPath); BuildSubContainerForThisProject(rootDirectoryPath, parentContainer); Project = _scope.Resolve <Func <string, Project> >()(projectSettingsPath); SetContributorsListToSession(Project.SessionsFolder); var peopleRepoFactory = _scope.Resolve <ElementRepository <Person> .Factory>(); peopleRepoFactory(rootDirectoryPath, Person.kFolderName, _scope.Resolve <PersonFileType>()); var sessionRepoFactory = _scope.Resolve <ElementRepository <Session> .Factory>(); sessionRepoFactory(rootDirectoryPath, Session.kFolderName, _scope.Resolve <SessionFileType>()); // Create background operations _presetGatherer = _scope.Resolve <PresetGatherer>(); _autoCompleteValueGatherer = _scope.Resolve <AutoCompleteValueGatherer>(); _audioVideoDataGatherer = _scope.Resolve <AudioVideoDataGatherer>(); _fieldGatherer = _scope.Resolve <FieldGatherer>(); // Start background operations _presetGatherer.Start(); _autoCompleteValueGatherer.Start(); _audioVideoDataGatherer.Start(); _fieldGatherer.Start(); var view1 = _scope.Resolve <ProjectScreen>(); var view2 = _scope.Resolve <SessionsListScreen>(); var view3 = _scope.Resolve <PersonListScreen>(); var views = new ISayMoreView[] { view1, view2, view3 }; ProjectWindow = _scope.Resolve <ProjectWindow.Factory>()(projectSettingsPath, views); }
/// ------------------------------------------------------------------------------------ public ComponentFile(ProjectElement parentElement, string pathToAnnotatedFile, IEnumerable <FileType> fileTypes, IEnumerable <ComponentRole> componentRoles, XmlFileSerializer xmlFileSerializer, IProvideAudioVideoFileStatistics statisticsProvider, PresetGatherer presetProvider, FieldUpdater fieldUpdater) { ParentElement = parentElement; SetPathToFile(pathToAnnotatedFile); _componentRoles = componentRoles; _xmlFileSerializer = xmlFileSerializer; _statisticsProvider = statisticsProvider; _presetProvider = presetProvider; _fieldUpdater = fieldUpdater; DetermineFileType(pathToAnnotatedFile, fileTypes); // we musn't do anything to remove the existing extension, as that is needed // to keep, say, foo.wav and foo.txt separate. Instead, we just append ".meta" //_metaDataPath = ComputeMetaDataPath(pathToAnnotatedFile); MetaDataFieldValues = new List <FieldInstance>(); Guard.AgainstNull(FileType, "At runtime (maybe not in tests) FileType should go to a type intended for unknowns"); _metaDataPath = FileType.GetMetaFilePath(pathToAnnotatedFile); RootElementName = "MetaData"; if (File.Exists(_metaDataPath)) { LoadNow(); } InitializeFileInfo(); }
public static string FirstValueOfFirstPreset(this PresetGatherer gatherer) { return(gatherer.GetPresets().First().Value.Values.First()); }