Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public override bool Equals(object obj)
        {
            if (!(obj is CallbackInfo))
            {
                return(false);
            }
            CallbackInfo info = obj as CallbackInfo;

            if (info.Client != base.Client)
            {
                return(false);
            }
            if ((info.Callback is short) && (base._theCallback is short))
            {
                if (((short)info.Callback) != ((short)base._theCallback))
                {
                    return(false);
                }
            }
            else if (info.Callback != base._theCallback)
            {
                return(false);
            }
            return(true);
        }
Example #2
0
 public override void RegisterKeyNotification(string[] keys, CallbackInfo updateCallback, CallbackInfo removeCallback, OperationContext operationContext)
 {
     base.Sync.AcquireWriterLock(-1);
     try
     {
         this.Internal.RegisterKeyNotification(keys, updateCallback, removeCallback, operationContext);
     }
     finally
     {
         base.Sync.ReleaseWriterLock();
     }
 }
Example #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="value">Valor associado.</param>
 /// <param name="onCacheItemRemovedCallback">Callback de quando o item é removido.</param>
 /// <param name="onCacheItemUpdateCallback">Callback de quando o item é atualizado.</param>
 /// <param name="onAsyncOperationCompleteCallback">Callback de quando a operação é completada.</param>
 /// <param name="onWriteBehindOperationCompletedCallback">Callback de quando a operação de escrita é completada.</param>
 public CallbackEntry(object value, CallbackInfo onCacheItemRemovedCallback, CallbackInfo onCacheItemUpdateCallback, AsyncCallbackInfo onAsyncOperationCompleteCallback, AsyncCallbackInfo onWriteBehindOperationCompletedCallback)
 {
     _itemRemovedListener = ArrayList.Synchronized(new ArrayList(2));
     _itemUpdateListener  = ArrayList.Synchronized(new ArrayList(2));
     _value = value;
     if (onCacheItemRemovedCallback != null)
     {
         _itemRemovedListener.Add(onCacheItemRemovedCallback);
     }
     if (onCacheItemUpdateCallback != null)
     {
         _itemUpdateListener.Add(onCacheItemUpdateCallback);
     }
     _onAsyncOperationCompleteCallback        = onAsyncOperationCompleteCallback;
     _onWriteBehindOperationCompletedCallback = onWriteBehindOperationCompletedCallback;
 }
Example #4
0
 /// <summary>
 /// Remove as informações de callback.
 /// </summary>
 /// <param name="updateCallback"></param>
 /// <param name="removeCallback"></param>
 internal void RemoveCallbackInfo(CallbackInfo updateCallback, CallbackInfo removeCallback)
 {
     lock (this)
     {
         if ((updateCallback != null) || (removeCallback != null))
         {
             CallbackEntry entry = null;
             if (this.Value is CallbackEntry)
             {
                 entry = this.Value as CallbackEntry;
                 if (updateCallback != null)
                 {
                     entry.RemoveItemUpdateCallback(updateCallback);
                 }
                 if (removeCallback != null)
                 {
                     entry.RemoveItemRemoveCallback(removeCallback);
                 }
             }
         }
     }
 }
Example #5
0
 public virtual void UnregisterKeyNotification(string key, CallbackInfo updateCallback, CallbackInfo removeCallback, OperationContext operationContext)
 {
 }