Пример #1
0
 public EntryEvent(object source, IMember member, EntryEventType eventType, K key, V oldValue, V value)
     : base(source, member, eventType)
 {
     this.key      = key;
     this.oldValue = oldValue;
     this.value    = value;
 }
    public static EntryEvent GetFalse(EntryEventType type)
    {
        var e = new EntryEvent(type);

        e.SetFlag(false);
        return(e);
    }
Пример #3
0
 protected AbstractMapEvent(object source, IMember member, EntryEventType eventType)
     : base(source)
 {
     Name            = (string)source;
     Member          = member;
     _entryEventType = eventType;
 }
    public static EntryEvent GetTrue(EntryEventType type)
    {
        var e = new EntryEvent(type);

        e.SetFlag(true);
        return(e);
    }
Пример #5
0
 public void OnEntryEvent(string source, IData keyData, IData valueData, IData oldValueData, IData mergingValue,
     EntryEventType eventType, IMember member, int numberOfAffectedEntries)
 {
     if (eventType.HasFlag(EntryEventType.EvictAll) || eventType.HasFlag(EntryEventType.ClearAll))
     {
         var mapEvent = new MapEvent(source, member, eventType, numberOfAffectedEntries);
         switch (eventType)
         {
             case EntryEventType.EvictAll:
             {
                 MapEvicted(mapEvent);
                 break;
             }
             case EntryEventType.ClearAll:
             {
                 MapCleared(mapEvent);
                 break;
             }
         }
     }
     else
     {
         var dataAwareEvent = new DataAwareEntryEvent<TKey, TValue>(source, member, eventType, keyData,
             valueData, oldValueData, mergingValue, SerializationService);
         switch (eventType)
         {
             case EntryEventType.Added:
             {
                 EntryAdded(dataAwareEvent);
                 break;
             }
             case EntryEventType.Removed:
             {
                 EntryRemoved(dataAwareEvent);
                 break;
             }
             case EntryEventType.Updated:
             {
                 EntryUpdated(dataAwareEvent);
                 break;
             }
             case EntryEventType.Evicted:
             {
                 EntryEvicted(dataAwareEvent);
                 break;
             }
             case EntryEventType.Expired:
             {
                 EntryExpired(dataAwareEvent);
                 break;
             }
             case EntryEventType.Merged:
             {
                 EntryMerged(dataAwareEvent);
                 break;
             }
         }
     }
 }
Пример #6
0
 public EntryEvent(object source, IMember member, EntryEventType eventType, TKey key, TValue oldValue,
                   TValue value)
     : base(source, member, eventType)
 {
     _key      = key;
     _oldValue = oldValue;
     _value    = value;
 }
Пример #7
0
 public EntryEvent(string source, IMember member, EntryEventType eventType, TKey key, TValue value,
                   TValue oldValue = default(TValue), TValue mergingValue = default(TValue))
     : base(source, member, eventType)
 {
     _key          = key;
     _value        = value;
     _oldValue     = oldValue;
     _mergingValue = mergingValue;
 }
Пример #8
0
 public DataAwareEntryEvent(string source, IMember member, EntryEventType eventType, IData keyData,
                            IData valueData, IData oldValueData, IData mergingValueData, ISerializationService serializationService)
     : base(source, member, eventType, default(TKey), default(TValue), default(TValue), default(TValue))
 {
     _serializationService = serializationService;
     _key          = new Lazy <TKey>(() => ValueFactory <TKey>(keyData));
     _value        = new Lazy <TValue>(() => ValueFactory <TValue>(valueData));
     _oldValue     = new Lazy <TValue>(() => ValueFactory <TValue>(oldValueData));
     _mergingValue = new Lazy <TValue>(() => ValueFactory <TValue>(mergingValueData));
 }
 public EntryEvent this[EntryEventType type]
 {
     get
     {
         return(UserEntryFlagDict[type]);
     }
     set
     {
         UserEntryFlagDict[type] = value;
     }
 }
        public void OnEntryEvent(IData keyData, IData valueData, IData oldValueData, IData mergingValueData,
                                 EntryEventType eventType, string uuid,
                                 int numberOfAffectedEntries, bool includeValue, IEntryListener <TKey, TValue> listener)
        {
            var value    = default(TValue);
            var oldValue = default(TValue);

            if (includeValue)
            {
                value    = ToObject <TValue>(valueData);
                oldValue = ToObject <TValue>(oldValueData);
            }
            var key    = ToObject <TKey>(keyData);
            var member = GetContext().GetClusterService().GetMember(uuid);

            switch (eventType)
            {
            case EntryEventType.Added:
            {
                listener.EntryAdded(new EntryEvent <TKey, TValue>(GetName(), member, eventType, key, oldValue,
                                                                  value));
                break;
            }

            case EntryEventType.Removed:
            {
                listener.EntryRemoved(new EntryEvent <TKey, TValue>(GetName(), member, eventType, key, oldValue,
                                                                    value));
                break;
            }

            case EntryEventType.ClearAll:
            {
                listener.MapCleared(new MapEvent(GetName(), member, eventType,
                                                 numberOfAffectedEntries));
                break;
            }
            }
        }
 public AutoResetEvent GetLatch(EntryEventType key)
 {
     return(latches[key]);
 }
 public EntryEvent(EntryEventType type)
 {
     EventType = type;
 }
Пример #13
0
 public EntryEvent(object source, IMember member, EntryEventType eventType, K key, V value)
     : this(source, member, eventType, key, default(V), value)
 {
 }
Пример #14
0
 public EntryEvent(object source, IMember member, EntryEventType eventType, TKey key, TValue value)
     : this(source, member, eventType, key, default(TValue), value)
 {
 }
Пример #15
0
 public MapEvent(object source, IMember member, EntryEventType eventType, int numberofEntriesAffected) : base(source, member, eventType)
 {
     this.numberofEntriesAffected = numberofEntriesAffected;
 }
Пример #16
0
 public MapEvent(string source, IMember member, EntryEventType eventType, int numberofEntriesAffected)
     : base(source, member, eventType)
 {
     _numberofEntriesAffected = numberofEntriesAffected;
 }
Пример #17
0
 public MapEvent(object source, IMember member, EntryEventType eventType, int numberofEntriesAffected)
     : base(source, member, eventType)
 {
     _numberofEntriesAffected = numberofEntriesAffected;
 }