Ejemplo n.º 1
0
        private Triple <String[], String[], String[]> LoadOptimizer(String fileName)
        {
            __bwLoad.ReportProgress(-1, "Loading");

            _opt = new PackageOptimizer(__fileName.Text);
            List <String> messages = _opt.LoadAndValidate();

            String[] missing = new String[0], unreferenced = new String[0];

            __bwLoad.ReportProgress(-1, "Loading Missing and Unreferenced Files");

            if (messages.Count > 0)
            {
                return(new Triple <String[], String[], String[]>(messages.ToArray(), missing, unreferenced));
            }

            /////////////////////////
            // Missing and Unreferenced Files

            _opt.GetFiles(out missing, out unreferenced);

            /////////////////////////
            // Duplicate Files

            __bwLoad.ReportProgress(-1, "Loading Duplicate Files");

            DuplicateFinder finder = _opt.GetDuplicateFilesFinder();

            finder.StatusUpdated += new EventHandler(finder_StatusUpdated);

            finder.Search();

            return(new Triple <String[], String[], String[]>(messages.ToArray(), missing, unreferenced));
        }