Пример #1
0
        // Token: 0x06000498 RID: 1176 RVA: 0x00018BD8 File Offset: 0x00016DD8
        public static XElement FormatErrorElement(string message)
        {
            ArgumentValidator.ThrowIfNullOrWhiteSpace("message", message);
            XElement xelement = DiagnosticsFormatter.FormatRootElement();

            xelement.Add(new XElement("Error", message));
            return(xelement);
        }
Пример #2
0
        // Token: 0x06000499 RID: 1177 RVA: 0x00018C10 File Offset: 0x00016E10
        public static XElement FormatHelpElement(DiagnosticsArgument arguments)
        {
            ArgumentValidator.ThrowIfNull("arguments", arguments);
            XElement xelement = DiagnosticsFormatter.FormatRootElement();

            xelement.Add(new XElement("Help", "Supported arguments: " + arguments.GetSupportedArguments()));
            return(xelement);
        }
Пример #3
0
 // Token: 0x0600049F RID: 1183 RVA: 0x00019068 File Offset: 0x00017268
 public XElement Process(TimeBasedAssistantControllerWrapper[] assistantControllers)
 {
     ArgumentValidator.ThrowIfNull("assistantControllers", assistantControllers);
     if (this.Arguments.ArgumentCount != 0)
     {
         return(this.tbaProcessor.Process(assistantControllers));
     }
     return(DiagnosticsFormatter.FormatHelpElement(this.Arguments));
 }
Пример #4
0
        // Token: 0x06000493 RID: 1171 RVA: 0x0001892C File Offset: 0x00016B2C
        public static XElement FormatTimeBasedJobDatabaseStats(string dbName, Guid dbGuid, DiagnosticsSummaryDatabase dbSummary)
        {
            ArgumentValidator.ThrowIfNullOrWhiteSpace("dbName", dbName);
            ArgumentValidator.ThrowIfEmpty("dbGuid", dbGuid);
            ArgumentValidator.ThrowIfNull("dbSummary", dbSummary);
            XElement xelement = DiagnosticsFormatter.FormatTimeBasedJobDatabaseStatsCommon(dbName, dbGuid, dbSummary);
            XElement content  = DiagnosticsFormatter.FormatTimeBasedJobMailboxStatsWindow("WindowJob", dbSummary.WindowJobStatistics);
            XElement content2 = DiagnosticsFormatter.FormatTimeBasedJobMailboxStats("OnDemandJobs", dbSummary.OnDemandJobsStatistics);

            xelement.Add(content);
            xelement.Add(content2);
            return(xelement);
        }
Пример #5
0
        // Token: 0x0600049B RID: 1179 RVA: 0x00018D44 File Offset: 0x00016F44
        private static XElement FormatTimeBasedJobMailboxStatsWindow(string jobElementName, DiagnosticsSummaryJobWindow mbxSummary)
        {
            ArgumentValidator.ThrowIfNullOrWhiteSpace("jobElementName", jobElementName);
            ArgumentValidator.ThrowIfNull("mbxSummary", mbxSummary);
            XElement xelement = DiagnosticsFormatter.FormatTimeBasedJobMailboxStats(jobElementName, mbxSummary.DiagnosticsSummaryJob);

            xelement.AddFirst(new XElement("FailedFilteringMailboxCount", mbxSummary.FailedFilteringCount));
            xelement.AddFirst(new XElement("FilteredMailboxCount", mbxSummary.FilteredMailboxCount));
            xelement.AddFirst(new XElement("NotInterestingMailboxCount", mbxSummary.NotInterestingCount));
            xelement.AddFirst(new XElement("InterestingMailboxCount", mbxSummary.InterestingCount));
            xelement.AddFirst(new XElement("TotalOnDatabaseMailboxCount", mbxSummary.TotalOnDatabaseCount));
            xelement.AddFirst(new XElement("StartTime", mbxSummary.StartTime.ToString("O", CultureInfo.InvariantCulture)));
            xelement.Add(new XElement("MovedToOnDemandMailboxCount", mbxSummary.ProcessedSeparatelyCount));
            return(xelement);
        }
Пример #6
0
        // Token: 0x06000496 RID: 1174 RVA: 0x00018B18 File Offset: 0x00016D18
        public static XElement FormatWindowJobHistory(string dbName, Guid dbGuid, DiagnosticsSummaryDatabase dbSummary, DiagnosticsSummaryJobWindow[] windowJobHistory)
        {
            ArgumentValidator.ThrowIfNullOrWhiteSpace("dbName", dbName);
            ArgumentValidator.ThrowIfEmpty("dbGuid", dbGuid);
            ArgumentValidator.ThrowIfNull("dbSummary", dbSummary);
            ArgumentValidator.ThrowIfNull("windowJobHistory", windowJobHistory);
            XElement xelement  = DiagnosticsFormatter.FormatTimeBasedJobDatabaseStatsCommon(dbName, dbGuid, dbSummary);
            XElement xelement2 = new XElement("WindowJobs");

            foreach (XElement content in windowJobHistory.Select(new Func <DiagnosticsSummaryJobWindow, XElement>(DiagnosticsFormatter.FormatTimeBasedJobWindowHistoryEntry)))
            {
                xelement2.Add(content);
            }
            xelement.Add(xelement2);
            return(xelement);
        }
Пример #7
0
        // Token: 0x06000495 RID: 1173 RVA: 0x00018A58 File Offset: 0x00016C58
        public static XElement FormatTimeBasedMailboxes(bool formatActive, string dbName, Guid dbGuid, DiagnosticsSummaryDatabase dbSummary, IEnumerable <Guid> mailboxCollection)
        {
            ArgumentValidator.ThrowIfNullOrWhiteSpace("dbName", dbName);
            ArgumentValidator.ThrowIfEmpty("dbGuid", dbGuid);
            ArgumentValidator.ThrowIfNull("dbSummary", dbSummary);
            ArgumentValidator.ThrowIfNull("mailboxCollection", mailboxCollection);
            string   expandedName = formatActive ? "Running" : "Queued";
            XElement xelement     = DiagnosticsFormatter.FormatTimeBasedJobDatabaseStatsCommon(dbName, dbGuid, dbSummary);
            XElement xelement2    = new XElement(expandedName);

            foreach (Guid guid in mailboxCollection)
            {
                XElement content = new XElement("MailboxGuid", guid);
                xelement2.Add(content);
            }
            xelement.Add(xelement2);
            return(xelement);
        }
Пример #8
0
        public XElement Process(TimeBasedAssistantControllerWrapper[] assistantControllers)
        {
            ArgumentValidator.ThrowIfNull("assistantControllers", assistantControllers);
            IEnumerable <TimeBasedAssistantControllerWrapper> tbasToProcess;

            try
            {
                tbasToProcess = this.GetTbasToProcess(assistantControllers);
            }
            catch (UnknownAssistantException exception)
            {
                return(DiagnosticsFormatter.FormatErrorElement(exception));
            }
            if (tbasToProcess == null)
            {
                return(DiagnosticsFormatter.FormatErrorElement("Could not find any TBA to provide diagnostics for."));
            }
            XElement xelement = DiagnosticsFormatter.FormatRootElement();

            foreach (TimeBasedAssistantControllerWrapper tba in tbasToProcess)
            {
                List <TimeBasedDatabaseDriver> databaseDriversToProcess;
                try
                {
                    databaseDriversToProcess = this.dbProcessor.GetDatabaseDriversToProcess(tba);
                }
                catch (UnknownDatabaseException exception2)
                {
                    return(DiagnosticsFormatter.FormatErrorElement(exception2));
                }
                if (databaseDriversToProcess == null)
                {
                    return(DiagnosticsFormatter.FormatErrorElement("Could not retrive the list of database drivers to process (null value)."));
                }
                if (databaseDriversToProcess.Count > 0)
                {
                    XElement content = this.ProcessDiagnosticsForOneTba(tba, databaseDriversToProcess);
                    xelement.Add(content);
                }
            }
            return(xelement);
        }
Пример #9
0
 // Token: 0x0600048C RID: 1164 RVA: 0x00018720 File Offset: 0x00016920
 public XElement ProcessDiagnosticsForOneDatabase(TimeBasedDatabaseDriver driver)
 {
     ArgumentValidator.ThrowIfNull("driver", driver);
     if (base.Arguments.HasArgument("summary"))
     {
         return(DiagnosticsFormatter.FormatTimeBasedJobDatabaseStats(driver.DatabaseInfo.DatabaseName, driver.DatabaseInfo.Guid, driver.GetDatabaseDiagnosticsSummary()));
     }
     if (base.Arguments.HasArgument("running"))
     {
         return(DiagnosticsFormatter.FormatTimeBasedMailboxes(true, driver.DatabaseInfo.DatabaseName, driver.DatabaseInfo.Guid, driver.GetDatabaseDiagnosticsSummary(), driver.GetMailboxGuidList(true)));
     }
     if (base.Arguments.HasArgument("queued"))
     {
         return(DiagnosticsFormatter.FormatTimeBasedMailboxes(false, driver.DatabaseInfo.DatabaseName, driver.DatabaseInfo.Guid, driver.GetDatabaseDiagnosticsSummary(), driver.GetMailboxGuidList(false)));
     }
     if (base.Arguments.HasArgument("history"))
     {
         return(DiagnosticsFormatter.FormatWindowJobHistory(driver.DatabaseInfo.DatabaseName, driver.DatabaseInfo.Guid, driver.GetDatabaseDiagnosticsSummary(), driver.GetWindowJobHistory()));
     }
     return(DiagnosticsFormatter.FormatTimeBasedJobDatabaseStatsCommon(driver.DatabaseInfo.DatabaseName, driver.DatabaseInfo.Guid, driver.GetDatabaseDiagnosticsSummary()));
 }
Пример #10
0
        private XElement ProcessDiagnosticsForOneTba(TimeBasedAssistantControllerWrapper tba, IEnumerable <TimeBasedDatabaseDriver> drivers)
        {
            ArgumentValidator.ThrowIfNull("tba", tba);
            ArgumentValidator.ThrowIfNull("drivers", drivers);
            string   id                  = tba.Id;
            TimeSpan workCycle           = tba.Controller.TimeBasedAssistantType.WorkCycle;
            TimeSpan workCycleCheckpoint = tba.Controller.TimeBasedAssistantType.WorkCycleCheckpoint;
            XElement xelement            = DiagnosticsFormatter.FormatAssistantRoot(id);
            XElement content             = DiagnosticsFormatter.FormatWorkcycleInfoElement(workCycle);
            XElement content2            = DiagnosticsFormatter.FormatWorkcycleCheckpointInfoElement(workCycleCheckpoint);
            XElement xelement2           = DiagnosticsFormatter.FormatDatabasesRoot();

            foreach (TimeBasedDatabaseDriver driver in drivers)
            {
                XElement content3 = this.dbProcessor.ProcessDiagnosticsForOneDatabase(driver);
                xelement2.Add(content3);
            }
            xelement.Add(content);
            xelement.Add(content2);
            xelement.Add(xelement2);
            return(xelement);
        }
Пример #11
0
 // Token: 0x06000497 RID: 1175 RVA: 0x00018BC0 File Offset: 0x00016DC0
 public static XElement FormatErrorElement(Exception exception)
 {
     ArgumentValidator.ThrowIfNull("exception", exception);
     return(DiagnosticsFormatter.FormatErrorElement(exception.Message));
 }