ClrPlus.Scripting.MsBuild.Building.Tasks.MsBuildEx.ValidateParameters C# (CSharp) Метод

ValidateParameters() защищенный Метод

protected ValidateParameters ( ) : bool
Результат bool
        protected bool ValidateParameters()
        {
            Index = ++Counter;

            if ((((ushort)GetKeyState(0x91)) & 0xffff) != 0) {
                Debugger.Break();
            }

            if (Projects.IsNullOrEmpty()) {
                return false;
            }
            var badFiles = new List<string>();

            projectFiles = Projects.Select(each => {
                var r = each.ItemSpec.GetFullPath();
                if (File.Exists(r)) {
                    return each.ItemSpec.GetFullPath();
                }
                badFiles.Add(each.ItemSpec);
                return null;
            }).ToArray();

            if (badFiles.Count > 0) {
                LogError("Unable to resolve location of project files:");
                badFiles.ForEach(each => LogError("»  {0}".format(each)));
                return false;
            }

            lock (typeof (MsBuildEx)) {
                try {
                    EnvironmentUtility.Push();

                    if (ResetEnvironmentFirst) {
                        new LoadSystemEnvironment().Execute();
                    }

                    if (!LoadEnvironmentFromTargets.IsNullOrEmpty()) {
                        foreach (var tgt in LoadEnvironmentFromTargets.Select(each => each.ItemSpec)) {
                            var seft = new SetEnvironmentFromTarget {
                                Target = tgt,
                                BuildEngine = BuildEngine,
                                HostObject = HostObject,
                            };
                            seft.Execute();
                            if (!seft.IsEnvironmentValid) {
                                if (SkippingMessage.Is()) {
                                    Messages.Enqueue( new BuildMessage( SkippingMessage));
                                }
                                skip = true;
                                return true;
                            }
                        }
                    }

                    var vars = Environment.GetEnvironmentVariables();
                    _environment = new XDictionary<string, string>();

                    foreach (var i in vars.Keys) {
                        _environment.Add(i.ToString(), ((string)vars[i]) ?? "");
                    }
                } finally {
                    EnvironmentUtility.Pop();
                }
            }
            return true;
        }