/// ------------------------------------------------------------------------------------
 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;
 }
Exemple #3
0
        /// ------------------------------------------------------------------------------------
        public void Dispose()
        {
            if (_annotationFile != null)
            {
                _annotationFile.Dispose();
            }
            _annotationFile = null;

            _xmlFileSerializer  = null;
            _statisticsProvider = null;
            _presetProvider     = null;
            _fieldUpdater       = null;
            MetaDataFieldValues = null;
            ParentElement       = null;
        }
Exemple #4
0
        /// ------------------------------------------------------------------------------------
        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();
        }