Ejemplo n.º 1
0
        virtual protected List <IBuild> DiscoverBuilds()
        {
            var BuildList = new List <IBuild>();

            if (BuildPaths.Count() > 0)
            {
                foreach (string Path in BuildPaths)
                {
                    IEnumerable <IFolderBuildSource> BuildSources = Gauntlet.Utils.InterfaceHelpers.FindImplementations <IFolderBuildSource>();

                    foreach (var BS in BuildSources)
                    {
                        IEnumerable <IBuild> Builds = BS.GetBuildsAtPath(ProjectName, Path);

                        BuildList.AddRange(Builds);
                    }
                }
            }

            // Editor?
            IBuild EditorBuild = CreateEditorBuild(UnrealPath);

            if (EditorBuild != null)
            {
                BuildList.Add(EditorBuild);
            }
            else
            {
                Log.Verbose("No editor found for {0}, editor-builds will be unavailable", ProjectName);
            }

            // give higher level code a chance to reject stuff
            return(BuildList.Where(B => ShouldMakeBuildAvailable(B)).ToList());
        }