Esempio n. 1
0
        private bool OpenConfig(string file, out string message, int loop = 0)
        {
            var content = File.ReadAllText(file);

            if (Support.IsBeta(content))
            {
                BetaLabel.Text = "Beta: True";
            }
            else
            {
                BetaLabel.Text = "Beta: False";
            }

            if (Support.IsUsingInstead(content, out var config))
            {
                var combPath = Path.Combine(_configFolder, config.useInstead);

                if (loop < 5)
                {
                    return(OpenConfig(combPath, out message, loop + 1));
                }
                else
                {
                    message = "UseInstead redirected more than 5 times. Loading config aborted.";
                    return(false);
                }
            }

            return(Support.TryParseConfig(content, out _config, out message));
        }
Esempio n. 2
0
        private bool OpenConfig(string file, out string message, List <string> searchedJsons = null)
        {
            var content = File.ReadAllText(file);

            if (Support.IsUsingInstead(content, out var config))
            {
                var combPath = Path.Combine(_configFolder, config.useInstead);

                if (searchedJsons == null)
                {
                    searchedJsons = new List <string>();
                }

                if (!searchedJsons.Contains(combPath))
                {
                    searchedJsons.Add(combPath);
                    return(OpenConfig(combPath, out message, searchedJsons));
                }
                else
                {
                    message = "UseInstead loop detected.";
                    return(false);
                }
            }

            return(Support.TryParseConfig(content, out _config, out message));
        }