SoundFingerprinting.Utils.TestRunner.Insert C# (CSharp) Method

Insert() private method

private Insert ( string folderWithSongs, IStride stride, StringBuilder sb ) : void
folderWithSongs string
stride IStride
sb StringBuilder
return void
        private void Insert(string folderWithSongs, IStride stride, StringBuilder sb)
        {
            var allFiles = AllFiles(folderWithSongs);
            int inserted = 0;
            var stopWatch = new Stopwatch();
            stopWatch.Start();
            Parallel.ForEach(
                allFiles,
                file =>
                    {
                        OnTestRunnerEvent(
                            OngoingActionEvent,
                            new TestRunnerOngoingEventArgs
                                {
                                    Message = string.Format(
                                            "Inserting tracks {0} out of {1}. Track {2}",
                                            Interlocked.Increment(ref inserted),
                                            allFiles.Count,
                                            System.IO.Path.GetFileNameWithoutExtension(file))
                                });
                        var track = InsertTrack(file);
                        var hashes = fcb.BuildFingerprintCommand()
                                        .From(file)
                                        .WithFingerprintConfig(config => { config.Stride = stride; })
                                        .UsingServices(audioService)
                                        .Hash()
                                        .Result;

                        modelService.InsertHashDataForTrack(hashes, track);
                    });

            stopWatch.Stop();
            sb.AppendLine(string.Format("{0},{1}", inserted, stopWatch.ElapsedMilliseconds / 1000));
        }