// Token: 0x06000E75 RID: 3701 RVA: 0x000369B4 File Offset: 0x00034BB4
        private static void UpdateNotificationDropped(NotificationStatisticsValue value, NotificationPayloadBase payload, NotificationState state)
        {
            value.Dropped++;
            switch (state)
            {
            case NotificationState.CreatedOrReceived:
                if (payload.ReceivedTime != null)
                {
                    value.ReceivedAndDropped++;
                    return;
                }
                if (payload.CreatedTime != null)
                {
                    value.CreatedAndDropped++;
                    return;
                }
                break;

            case NotificationState.Queued:
                value.QueuedAndDropped++;
                return;

            case NotificationState.Dispatching:
                value.DispatchingAndDropped++;
                break;

            default:
                return;
            }
        }
        // Token: 0x06000E2A RID: 3626 RVA: 0x00035AB4 File Offset: 0x00033CB4
        private void UpdateInternal(NotificationLocation location, NotificationPayloadBase payload, Action <NotificationStatisticsValue, NotificationPayloadBase> doUpdate)
        {
            NotificationStatisticsKey   key   = new NotificationStatisticsKey(location, payload.GetType(), payload.EventType == QueryNotificationType.Reload);
            NotificationStatisticsValue orAdd = this.data.GetOrAdd(key, new NotificationStatisticsValue());

            doUpdate(orAdd, payload);
        }
 // Token: 0x06000E72 RID: 3698 RVA: 0x00036824 File Offset: 0x00034A24
 private static void UpdateNotificationQueued(NotificationStatisticsValue value, NotificationPayloadBase payload)
 {
     payload.QueuedTime = new DateTime?(DateTime.UtcNow);
     value.Queued++;
     if (payload.CreatedTime != null)
     {
         value.CreatedAndQueued.Add((payload.QueuedTime.Value - payload.CreatedTime.Value).TotalMilliseconds);
     }
 }
 // Token: 0x06000E74 RID: 3700 RVA: 0x00036928 File Offset: 0x00034B28
 private static void UpdateNotificationPushed(NotificationStatisticsValue value, NotificationPayloadBase payload, DateTime pushTime)
 {
     value.Pushed++;
     if (payload.CreatedTime != null)
     {
         value.CreatedAndPushed.Add((pushTime - payload.CreatedTime.Value).TotalMilliseconds);
     }
     if (payload.QueuedTime != null)
     {
         value.QueuedAndPushed.Add((pushTime - payload.QueuedTime.Value).TotalMilliseconds);
     }
 }
        // Token: 0x06000E73 RID: 3699 RVA: 0x00036894 File Offset: 0x00034A94
        private static void UpdateNotificationDispatched(NotificationStatisticsValue value, NotificationPayloadBase payload)
        {
            value.Dispatched++;
            DateTime utcNow = DateTime.UtcNow;

            if (payload.CreatedTime != null)
            {
                value.CreatedAndDispatched.Add((utcNow - payload.CreatedTime.Value).TotalMilliseconds);
                return;
            }
            if (payload.ReceivedTime != null)
            {
                value.ReceivedAndDispatched.Add((utcNow - payload.ReceivedTime.Value).TotalMilliseconds);
            }
        }
 internal NotificationStatisticsLogEvent(NotificationStatisticsEventType eventType, DateTime startTime, NotificationStatisticsKey key, NotificationStatisticsValue value)
 {
     if (key == null)
     {
         throw new ArgumentNullException("key");
     }
     if (value == null)
     {
         throw new ArgumentNullException("value");
     }
     this.eventType = eventType;
     this.startTime = startTime;
     this.key       = key;
     this.value     = value;
 }
 // Token: 0x06000E71 RID: 3697 RVA: 0x00036804 File Offset: 0x00034A04
 private static void UpdateNotificationReceived(NotificationStatisticsValue value, NotificationPayloadBase payload)
 {
     payload.ReceivedTime = new DateTime?(DateTime.UtcNow);
     value.Received++;
 }