/// <summary>
        /// Starts applying SQL Rules to page
        /// </summary>
        public void ApplySqlPageRules(string scriptName, string sqlFileContent)
        {
            List <Rule> relatedRules = _scriptCheck.FindRulesRelatedToScript(sqlFileContent, _sQLPageRules);

            relatedRules.ForEach(rule => {
                sqlFileContent = _replaceLogic.ApplyReplacementRules(rule.Replace, sqlFileContent);
            });

            Rule        templateRule = relatedRules.Where(rule => rule.TemplateName != null).FirstOrDefault();
            SqlTemplate sqlTemplate  = _processTemplate.GetTemplateForSqlScript(templateRule);

            if (relatedRules.Count == 0)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine($"No Matching rules for this script type for {scriptName}");
                Console.ResetColor();
                return;
            }

            if (templateRule.GetScriptNameFromFile)
            {
                scriptName = _replaceLogic.ApplyNewScriptName(sqlFileContent);
            }

            if (string.IsNullOrEmpty(scriptName))
            {
                return;
            }

            ProcessRulesOutput(sqlTemplate, scriptName, sqlFileContent);
        }