Exemplo n.º 1
0
        private void AddInvalidateListener()
        {
            try
            {
                IClientMessage          request = null;
                DistributedEventHandler handler = null;
                if (cacheType == ClientNearCacheType.Map)
                {
                    request = MapAddNearCacheEntryListenerCodec.EncodeRequest(mapName, false, (int)EntryEventType.All, false);

                    handler = message =>
                    {
                        MapAddNearCacheEntryListenerCodec.AbstractEventHandler.Handle(message,
                                                                                      (key, value, oldValue, mergingValue, type, uuid, entries) =>
                        {
                            CacheRecord removed;
                            cache.TryRemove(key, out removed);
                        });
                    };
                }
                else
                {
                    throw new NotImplementedException("Near cache is not available for this type of data structure");
                }

                registrationId = context.GetListenerService().StartListening(request,
                                                                             handler, m => MapAddNearCacheEntryListenerCodec.DecodeResponse(m).response);
            }
            catch (Exception e)
            {
                Logger.Severe("-----------------\n Near Cache is not initialized!!! \n-----------------", e);
            }
        }
Exemplo n.º 2
0
        private void AddInvalidateListener()
        {
            try
            {
                IClientMessage          request;
                DistributedEventHandler handler;
                if (_cacheType == ClientNearCacheType.Map)
                {
                    request = MapAddNearCacheEntryListenerCodec.EncodeRequest(_mapName, (int)EntryEventType.Invalidation,
                                                                              false);

                    handler = message
                              => MapAddNearCacheEntryListenerCodec.AbstractEventHandler.Handle(message, HandleIMapInvalidation, HandleIMapBatchInvalidation);
                }
                else
                {
                    throw new NotImplementedException("Near cache is not available for this type of data structure");
                }

                _registrationId = _context.GetListenerService().StartListening(request,
                                                                               handler, m => MapAddNearCacheEntryListenerCodec.DecodeResponse(m).response);
            }
            catch (Exception e)
            {
                Logger.Severe("-----------------\n Near Cache is not initialized!!! \n-----------------", e);
            }
        }
Exemplo n.º 3
0
        private void RegisterInvalidateListener()
        {
            try
            {
                var request =
                    MapAddNearCacheEntryListenerCodec.EncodeRequest(Name, (int)EntryEventType.Invalidation, false);
                DistributedEventHandler handler = message =>
                                                  MapAddNearCacheEntryListenerCodec.EventHandler.HandleEvent(message,
                                                                                                             HandleIMapInvalidationEvent_v1_0, HandleIMapInvalidationEvent_v1_4,
                                                                                                             HandleIMapBatchInvalidationEvent_v1_0, HandleIMapBatchInvalidationEvent_v1_4);

                RegistrationId = Client.GetListenerService().RegisterListener(request,
                                                                              message => MapAddNearCacheEntryListenerCodec.DecodeResponse(message).response,
                                                                              id => MapRemoveEntryListenerCodec.EncodeRequest(Name, id), handler);
            }
            catch (Exception e)
            {
                Logger.Severe("-----------------\n Near Cache is not initialized!!! \n-----------------", e);
            }
        }