CSL_Test__1.TorrentBuilder.BuildFromArrayList C# (CSharp) Метод

BuildFromArrayList() публичный Метод

public BuildFromArrayList ( ArrayList files ) : CSL_Test__1.Torrent[]
files System.Collections.ArrayList
Результат CSL_Test__1.Torrent[]
        public Torrent[] BuildFromArrayList(ArrayList files)
        {
            ArrayList torrents = new ArrayList();
            Torrent torrent;
            information[14] = null;
            int filescount = files.Count;
            double progress = 0;
            double count = 0;

            for (int a = 0; a < filescount; a++)
            {
                string birth = GetTorrentBirth((string)files[a]);
                torrent = ProcessTorrent((string)files[a], birth);

                if (information[14] != "true")
                {
                    if (SkipReleaseFormatCheck())
                    {
                        torrent = VerifyTorrent(torrent);
                        torrents.Add(torrent);
                    }
                    else
                    {
                        if (information[2] == null)
                        {
                            string file = (string)files[a];
                            if (SettingsHandler.GetHandleLoneTAsAlbum())
                            {
                                if (file.Contains("[CSL]--Temp"))
                                    information[2] = ExtractAlbumFormat(birth, file, file.Contains("[CSL]--Temp"));
                                else
                                    information[2] = Album;
                            }
                            else
                                information[2] = ExtractAlbumFormat(birth, file, file.Contains("[CSL]--Temp"));
                        }
                        if (SettingsHandler.GetDownloadFormatExists(information[2]))
                        {
                            torrent = VerifyTorrent(torrent);
                            torrents.Add(torrent);
                        }
                        else
                        {
                            DirectoryHandler.MoveTorrentFile((string)files[a], "unhandled");
                        }
                    }
                }

                    //Clear out information for this run to avoid misinformation on the next run
                    for (int b = 0; b < information.Length; b++)
                        information[b] = null;

                    progress = (++count / filescount) * 100;

                    if (progress <= 100 && progress >= 0)
                        this.ReportProgress((int)progress);

                }

            ew.ClearApplyToAll();
            object[] raw = torrents.ToArray();
            Torrent[] tarray = Array.ConvertAll(raw, new Converter<object, Torrent>(Converter));
            return tarray;
        }