示例#1
0
 // Token: 0x06000D18 RID: 3352 RVA: 0x00030CAC File Offset: 0x0002EEAC
 protected void GetPartialPayloadFromNotification(RowNotificationPayload payload, QueryNotification notification)
 {
     ExTraceGlobals.NotificationsCallTracer.TraceDebug <string>((long)this.GetHashCode(), "RowNotificationHandler.GetPartialPayloadFromNotification Start. SubscriptionId: {0}", base.SubscriptionId);
     payload.SubscriptionId = base.SubscriptionId;
     payload.EventType      = notification.EventType;
     payload.Prior          = Convert.ToBase64String(notification.Prior);
     payload.FolderId       = StoreId.StoreIdToEwsId(this.mailboxGuid, this.folderId);
 }
        protected override NotificationPayloadBase GetPayloadFromNotification(StoreObjectId folderId, QueryNotification notification)
        {
            ExTraceGlobals.NotificationsCallTracer.TraceDebug <string>((long)this.GetHashCode(), "[MessageItemRowNotificationHandler.GetPayloadFromNotification] Start. SubscriptionId: {0}", base.SubscriptionId);
            RowNotificationPayload rowNotificationPayload = new RowNotificationPayload();

            rowNotificationPayload.Source = new MailboxLocation(base.MailboxGuid);
            base.GetPartialPayloadFromNotification(rowNotificationPayload, notification);
            rowNotificationPayload.Item = this.GetMessageItemFromNotification(notification);
            return(rowNotificationPayload);
        }
示例#3
0
        internal void AddQueryResultChangedPayload(StoreObjectId folderId, string subscriptionId)
        {
            RowNotificationPayload rowNotificationPayload = new RowNotificationPayload();

            rowNotificationPayload.FolderId       = StoreId.StoreIdToEwsId(this.mailboxGuid, folderId);
            rowNotificationPayload.EventType      = QueryNotificationType.QueryResultChanged;
            rowNotificationPayload.SubscriptionId = subscriptionId;
            rowNotificationPayload.Source         = new MailboxLocation(this.mailboxGuid);
            this.queue.Enqueue(rowNotificationPayload);
            NotificationStatisticsManager.Instance.NotificationCreated(rowNotificationPayload);
        }
示例#4
0
        internal void AddFolderRefreshPayload(StoreObjectId folderId, string subscriptionId)
        {
            RowNotificationPayload rowNotificationPayload = new RowNotificationPayload();

            rowNotificationPayload.FolderId       = StoreId.StoreIdToEwsId(this.mailboxGuid, folderId);
            rowNotificationPayload.EventType      = QueryNotificationType.Reload;
            rowNotificationPayload.SubscriptionId = subscriptionId;
            rowNotificationPayload.Source         = new MailboxLocation(this.mailboxGuid);
            NotificationStatisticsManager.Instance.NotificationDropped(this.queue, NotificationState.CreatedOrReceived);
            this.ClearRowNotificationPayload();
            this.queue.Enqueue(rowNotificationPayload);
            NotificationStatisticsManager.Instance.NotificationCreated(rowNotificationPayload);
        }