public void Initialize() { #region Initialize parameters ParamServerList.AddRange(Args.GetValue(PARAM_SERVER_FILTER, Environment.MachineName).Split(';').Where(x => x != "")); ParamDbList.AddRange(Args.GetValue(PARAM_DB_FILTER, "").Split(';').Where(x => x != "")); ParamTableList.AddRange(Args.GetValue(PARAM_TABLE_FILTER, "").Split(';').Where(x => x != "")); ParamWithConfig = Args.IsDefined("config"); ParamConfigType = (EDocumentConfigType)Enum.Parse(typeof(EDocumentConfigType), Args.GetValue("config", "list"), true); ParamUserOnly = !Args.IsDefined("system"); ParamWithDatabases = Args.IsDefined("databases"); ParamDatabaseType = (EDocumentDatabasesType)Enum.Parse(typeof(EDocumentDatabasesType), Args.GetValue("databases", "list"), true); WithSP = Args.IsDefined("sp"); SpDetails = Args.GetValue("sp", "list"); WithTables = Args.IsDefined("tables"); ParamTablesType = (EDocumentTablesType)Enum.Parse(typeof(EDocumentTablesType), Args.GetValue("tables", "list"), true); WithViews = Args.IsDefined("views"); ViewDetails = Args.GetValue("views", "list"); WithUsers = Args.IsDefined("users"); ParamUsersType = (EDocumentUsersType)Enum.Parse(typeof(EDocumentUsersType), Args.GetValue("users", "list"), true); WithTriggers = Args.IsDefined("triggers"); TriggerDetails = Args.GetValue("triggers", "list"); WithJobs = Args.IsDefined("jobs"); JobDetails = Args.GetValue("jobs", "list"); foreach (string JobItem in Args.GetValue("jobstatus", "").Split(';').Where(x => x != "")) { JobStatusList.Add(JobItem.ToLower()); } WithJobHistory = Args.IsDefined("jobhistory"); JobHistoryDetails = Args.GetValue("jobhistory", "list"); if (JobHistoryDetails.IndexOf(":") != -1) { JobHistoryDays = Int32.Parse(JobHistoryDetails.Split(':')[1]); JobHistoryDetails = JobHistoryDetails.Split(':')[0]; } else { JobHistoryDays = 0; } Verbose = Args.IsDefined("verbose"); SmartList = Args.IsDefined("smart"); WithFunctions = Args.IsDefined("udf"); FunctionDetails = Args.GetValue("udf", "list"); WithUDT = Args.IsDefined("udt"); UDTDetails = Args.GetValue("udt", "list"); WithDTS = Args.IsDefined("dts"); DtsDetails = Args.GetValue("dts", "list"); XmlOutputPath = Args.GetValue("xmloutputpath", ""); XmlOutputFile = Args.GetValue("xmloutputfile", ""); WithDebug = Args.IsDefined("debug"); DebugFile = Args.GetValue("debugfile", ""); JobRegEx = Args.GetValue("jobsregex", ""); DtsRegEx = Args.GetValue("dtsregex", ""); SpRegEx = Args.GetValue("spregex", ""); ViewRegEx = Args.GetValue("viewsregex", ""); TableRegEx = Args.GetValue("tablesregex", ""); ParamUserId = Args.GetValue("userid", ""); ParamPassword = Args.GetValue("password", ""); #endregion #region Xml init if (XmlOutputFile.Length != 0) { if (XmlOutputPath.Length != 0) { XmlOutputPath = XmlOutputPath.TrimEnd(' ', '\\'); if (!Directory.Exists(XmlOutputPath)) { Directory.CreateDirectory(XmlOutputPath); } } // generate the xsl style sheet from the embedded resource Stream XsltStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("listdb.report.xslt"); XDocument Xslt = XDocument.Load(XsltStream); Xslt.Save(Path.Combine(XmlOutputPath, "report.xslt")); XDocument XmlOutput = new XDocument(); XmlOutput.Add(new XProcessingInstruction("xml-stylesheet", "type=\"text/xsl\" href=\"report.xslt\"")); } #endregion }