Пример #1
0
        /// <summary>
        /// Perform processing on the specified source file
        /// </summary>
        /// <param name="source">The source file to be processed</param>
        public void Process(string source)
        {
            _start = _start ?? DateTime.UtcNow;

            // process the source file
            foreach (var stream in _streamProvider.Open(source))
            {
                using (stream)
                {
                    foreach (var data in _parser.Parse(source, stream))
                    {
                        foreach (var processor in _processors)
                        {
                            processor.Process(data);
                        }
                    }
                }
            }

            Log.Trace("RawFileProcessor.Process({0}): Finished.", source);
            _streamProvider.Close(source);
        }