Beispiel #1
0
        internal AudioScan(DirectoryInfo directory, SearchOption searchoption,
                           bool parseAdd, bool parseUpdate, bool removeDeadFiles,
                           string[] extensions, IEnumerable<RawTrack> existingFiles, IEnumerable<string> ignoredFiles,
                           ScanFileEventHandler parsed,
                           ScanCompletedEventHandler done)
        {
            var thread = new Thread(Run);

            _directory = directory;
            _searchoption = searchoption;

            _parseAdd = parseAdd;
            _parseUpdate = parseUpdate;
            _removeDeadFiles = removeDeadFiles;

            _parser = new MediaParser();

            _extensions = extensions;
            _existingFiles = existingFiles.ToDictionary(rt => rt.File);

            _ignoredFiles = (from s in ignoredFiles select new FileInfo(s)).ToArray();

            Parsed = parsed;
            Done = done;

            _state = ScannerState.NotRunning;

            _added = _updated = _skipped = _error = _removed = _total = 0;

            thread.Start();
        }
        internal AudioScan(DirectoryInfo directory, SearchOption searchoption,
                           bool parseAdd, bool parseUpdate, bool removeDeadFiles,
                           string[] extensions, IEnumerable <RawTrack> existingFiles, IEnumerable <string> ignoredFiles,
                           ScanFileEventHandler parsed,
                           ScanCompletedEventHandler done)
        {
            var thread = new Thread(Run);

            _directory    = directory;
            _searchoption = searchoption;

            _parseAdd        = parseAdd;
            _parseUpdate     = parseUpdate;
            _removeDeadFiles = removeDeadFiles;

            _parser = new MediaParser();

            _extensions    = extensions;
            _existingFiles = existingFiles.ToDictionary(rt => rt.File);

            _ignoredFiles = (from s in ignoredFiles select new FileInfo(s)).ToArray();

            Parsed = parsed;
            Done   = done;

            _state = ScannerState.NotRunning;

            _added = _updated = _skipped = _error = _removed = _total = 0;

            thread.Start();
        }
Beispiel #3
0
        /// <summary>
        /// Raises the ItemScanCompleted event.
        /// </summary>
        /// <param name="e"></param>
        protected void OnItemScanCompleted(ScanCompletedEventArgs e)
        {
            ScanCompletedEventHandler completed = ItemScanCompleted;

            if (completed != null)
            {
                completed(this, e);
            }
        }
Beispiel #4
0
        /// <summary>
        /// Raises the VirusFound event.
        /// </summary>
        /// <param name="e"></param>
        protected void OnVirusFound(ScanCompletedEventArgs e)
        {
            ScanCompletedEventHandler found = this.VirusFound;

            if (found != null)
            {
                found(this, e);
            }
        }