public static SolutionGenerator FromText(string configText, string rootPath)
        {
            Log.Info("Loading solution from text with root path '{0}'", rootPath);

            var generator = new SolutionGenerator();

            generator.ParseSolutionConfig(configText, rootPath);
            return(generator);
        }
        public static SolutionGenerator FromPath(string solutionConfigPath)
        {
            Log.Info("Loading solution from path '{0}'", solutionConfigPath);

            string configText;

            try
            {
                configText = File.ReadAllText(solutionConfigPath);
            }
            catch (Exception ex)
            {
                throw new ArgumentException($"Solution config could not be loaded from path '{solutionConfigPath}'",
                                            nameof(solutionConfigPath), ex);
            }

            var generator = new SolutionGenerator();

            generator.ParseSolutionConfig(configText, Path.GetDirectoryName(solutionConfigPath));
            return(generator);
        }