// 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: 0x06000E27 RID: 3623 RVA: 0x00035A14 File Offset: 0x00033C14
 internal void Update(NotificationLocation location, NotificationPayloadBase payload, Action <NotificationStatisticsValue, NotificationPayloadBase> doUpdate)
 {
     if (location != null && payload != null && doUpdate != null)
     {
         this.UpdateInternal(location, payload, doUpdate);
     }
 }
 // Token: 0x06000E28 RID: 3624 RVA: 0x00035A28 File Offset: 0x00033C28
 internal void Update(NotificationLocation location, IEnumerable <NotificationPayloadBase> payloads, Action <NotificationStatisticsValue, NotificationPayloadBase> doUpdate)
 {
     if (location != null && payloads != null && doUpdate != null)
     {
         foreach (NotificationPayloadBase notificationPayloadBase in payloads)
         {
             if (notificationPayloadBase != null)
             {
                 this.UpdateInternal(location, notificationPayloadBase, doUpdate);
             }
         }
     }
 }
示例#4
0
 // Token: 0x06000E31 RID: 3633 RVA: 0x00035B25 File Offset: 0x00033D25
 public NotificationStatisticsKey(NotificationLocation location, Type payloadType, bool isReload)
 {
     if (location == null)
     {
         throw new ArgumentNullException("location");
     }
     if (payloadType == null)
     {
         throw new ArgumentNullException("payloadType");
     }
     this.Location    = location;
     this.PayloadType = payloadType;
     this.IsReload    = isReload;
 }