Exemple #1
0
        /// <summary>
        ///     Handles the Removed event of the DistributedMemoryManagerCache control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="KeyCacheEventArgs{TKey}" /> instance containing the event data.</param>
        protected override void DistributedMemoryManagerCache_Removed(object sender, KeyCacheEventArgs <long> e)
        {
            var message = new FieldEntityCacheMessage( );

            message.RemoveKeys.Add(e.Key);

            MessageChannel.Publish(message, PublishOptions.None, false, MergeMessages);
        }
Exemple #2
0
        /// <summary>
        ///     Handles the Cleared event of the DistributedMemoryManagerCache control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="CacheEventArgs" /> instance containing the event data.</param>
        protected override void DistributedMemoryManagerCache_Cleared(object sender, CacheEventArgs e)
        {
            var message = new FieldEntityCacheMessage
            {
                Clear = true
            };

            MessageChannel.Publish(message, PublishOptions.None, false, MergeMessages);
        }
Exemple #3
0
 /// <summary>
 ///     Merges the messages.
 /// </summary>
 /// <param name="existingMessage">The existing message.</param>
 /// <param name="newMessage">The new message.</param>
 private void MergeMessages(FieldEntityCacheMessage existingMessage, FieldEntityCacheMessage newMessage)
 {
     existingMessage.Clear |= newMessage.Clear;
     existingMessage.RemoveKeys.UnionWith(newMessage.RemoveKeys);
 }