// Token: 0x06000F2B RID: 3883 RVA: 0x0005A858 File Offset: 0x00058A58
        internal static XElement GetDiagnosticInfo(DiagnosticsArgument arguments)
        {
            XElement xelement = new XElement("PublicFolderSplit");

            if (arguments.HasArgument("mailbox"))
            {
                Guid argument = arguments.GetArgument <Guid>("mailbox");
                if (PublicFolderSplitProcessor.SplitStates.ContainsKey(argument))
                {
                    PublicFolderSplitProcessor.AddSplitStateDiagnostic(argument, PublicFolderSplitProcessor.SplitStates[argument], xelement);
                }
                else
                {
                    string splitDate = PublicFolderSplitProcessor.SplitDates.ContainsKey(argument) ? PublicFolderSplitProcessor.SplitDates[argument].ToString() : string.Empty;
                    PublicFolderSplitProcessor.AddSplitDateDiagnostic(argument, splitDate, xelement);
                }
                return(xelement);
            }
            if (arguments.HasArgument("recent"))
            {
                foreach (Guid guid in PublicFolderSplitProcessor.SplitStates.Keys)
                {
                    PublicFolderSplitProcessor.AddSplitStateDiagnostic(guid, PublicFolderSplitProcessor.SplitStates[guid], xelement);
                }
            }
            if (arguments.HasArgument("old"))
            {
                foreach (Guid guid2 in PublicFolderSplitProcessor.SplitDates.Keys)
                {
                    PublicFolderSplitProcessor.AddSplitDateDiagnostic(guid2, PublicFolderSplitProcessor.SplitDates[guid2].ToString(), xelement);
                }
            }
            return(xelement);
        }
        // Token: 0x06000ED3 RID: 3795 RVA: 0x000585DC File Offset: 0x000567DC
        public static XElement GetPublicFolderAssistantDiagnosticInfo(DiagnosticsArgument arguments)
        {
            XElement xelement = new XElement("PublicFolderAssistant");

            if (arguments.HasArgument("split"))
            {
                xelement.Add(PublicFolderSplitProcessor.GetDiagnosticInfo(arguments));
            }
            return(xelement);
        }
        // Token: 0x06000ED5 RID: 3797 RVA: 0x00058618 File Offset: 0x00056818
        protected override void InvokeInternal(InvokeArgs invokeArgs, List <KeyValuePair <string, object> > customDataToLog)
        {
            PublicFolderSession publicFolderSession = invokeArgs.StoreSession as PublicFolderSession;

            if (publicFolderSession == null)
            {
                return;
            }
            PublicFolderAssistant.Tracer.TraceDebug <string>((long)this.GetHashCode(), "PublicFolderAssistant::InvokeInternal::{0} - Begin processing of public folder mailbox", publicFolderSession.DisplayAddress);
            new PublicFolderHierarchySyncProcessor(publicFolderSession, PublicFolderAssistant.Tracer).Invoke();
            new PublicFolderItemProcessor(publicFolderSession, PublicFolderAssistant.Tracer).Invoke();
            using (PublicFolderSplitProcessor publicFolderSplitProcessor = new PublicFolderSplitProcessor(publicFolderSession, PublicFolderAssistant.Tracer))
            {
                publicFolderSplitProcessor.Invoke();
            }
            PublicFolderAssistant.Tracer.TraceDebug <string>((long)this.GetHashCode(), "PublicFolderAssistant::InvokeInternal::{0} - End processing of public folder mailbox", publicFolderSession.DisplayAddress);
        }