private void CopyFiles() { string currentDirectory = DirHandler.Instance.CurrentDirectory; // Copy Css files from the Repository dir to the Output Css dir... FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.CSS_DIR, Ids.COMMON_CSS_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.CSS_DIR, Ids.COMMON_CSS_FILE)); // Copy Images from the Repository dir to the Output Images dir... FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.IMAGES_DIR, Ids.PLUS_PNG_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.IMAGES_DIR, Ids.PLUS_PNG_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.IMAGES_DIR, Ids.MINUS_PNG_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.IMAGES_DIR, Ids.MINUS_PNG_FILE)); // Copy js files from the Repository dir to the Output JavaScript dir... FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.JAVASCRIPT_DIR, Ids.COMMON_JS_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.JAVASCRIPT_DIR, Ids.COMMON_JS_FILE)); // Copy xslt files from the Repository dir to the Output XSLT dir... FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.ALL_MATCHES_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.ALL_MATCHES_XSLT_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.ALL_PROJECT_DEFINITIONS_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.ALL_PROJECT_DEFINITIONS_XSLT_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.ALL_CATEGORY_DEFINITIONS_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.ALL_CATEGORY_DEFINITIONS_XSLT_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.ALL_RULE_DEFINITIONS_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.ALL_RULE_DEFINITIONS_XSLT_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.ALL_CATEGORY_DECLARATIONS_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.ALL_CATEGORY_DECLARATIONS_XSLT_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.ALL_LANGUAGE_DECLARATIONS_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.ALL_LANGUAGE_DECLARATIONS_XSLT_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.ALL_RULE_DECLARATIONS_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.ALL_RULE_DECLARATIONS_XSLT_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.TOC_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.TOC_XSLT_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.SUMMARY_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.SUMMARY_XSLT_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.SUB_TOC_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.SUB_TOC_XSLT_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.XSLT_DIR, Ids.FILES_SEARCHED_XSLT_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.XSLT_DIR, Ids.FILES_SEARCHED_XSLT_FILE)); // Copy xml files from the Repository dir to the Output dir (empty fallback files)... FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.SUMMARY_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.SUMMARY_FILE)); FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.SUB_TOC_XML_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.SUB_TOC_XML_FILE)); // Copy index file from the Repository dir to the Output dir... FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.INDEX_HTML_FILE), Path.Combine(OutputRootDir, Ids.OUTPUT_DIR, Ids.INDEX_HTML_FILE)); }
public XmlConfigLoaderProduct(ConfigManager manager) : base(manager) { Doc = null; IsConfigFileValid = true; string currentDirectory = DirHandler.Instance.CurrentDirectory; RulesConfigFilePath = Path.Combine(currentDirectory, Ids.CONFIG_DIR, Ids.RULES_CONFIG_FILE); RulesConfigSchemaPath = Path.Combine(currentDirectory, Ids.CONFIG_DIR, Ids.RULES_CONFIG_SCHEMA_FILE); // Check the for existence of the configuration file... if (string.IsNullOrWhiteSpace(RulesConfigFilePath) || !File.Exists(RulesConfigFilePath)) { // Copy default configuration file 'rules.config' from the 'Repository\examples\' to current execution dir... FileAccesser.CopyFile(Path.Combine(currentDirectory, Ids.REPOSITORY_DIR, Ids.EXAMPLES_DIR, Ids.RULES_CONFIG_FILE), Path.Combine(currentDirectory, Ids.CONFIG_DIR, Ids.RULES_CONFIG_FILE)); string warnTxt = string.Format("Unable to find the configuration file. Expected to find it here: {0}. Created default file for entering settings in. Change the content of the configuration file {1} and run the application again.", RulesConfigFilePath, Ids.RULES_CONFIG_FILE); Log.Warning(warnTxt); throw new InitializationException(this, -1, warnTxt); } // Check for existence of the schema file for the configuration file... if (string.IsNullOrWhiteSpace(RulesConfigSchemaPath) || !File.Exists(RulesConfigSchemaPath)) { string s = string.Format("Unable to find the schema validation file for the configuration file. Expected to find the schema validation file here: {0}.", RulesConfigSchemaPath); Log.Error(s); throw new InitializationException(this, -1, s); } // Load the configuration file and place the content of it in a XDocument... Doc = LoadConfigurationFile(); if (Doc == null) { throw new NullReferenceException("Failed to load the configuration file."); } }