/** * Constructs a {@link MutableCacheEntryListenerConfiguration} based on * another {@link CacheEntryListenerConfiguration}. * * @param configuration the {@link CacheEntryListenerConfiguration} */ public MutableCacheEntryListenerConfiguration(CacheEntryListenerConfiguration<K, V> configuration) { this.listenerFactory = configuration.getCacheEntryListenerFactory(); this.filterFactory = configuration.getCacheEntryEventFilterFactory(); this.isOldValueRequired = configuration.isOldValueRequired(); this.isSynchronous = configuration.isSynchronous(); }
private void registerEhcacheListeners(CacheEntryListenerConfiguration<K, V> config, ListenerResources<K, V> resources) { final boolean synchronous = config.isSynchronous(); final EventOrdering ordering = synchronous ? EventOrdering.ORDERED : EventOrdering.UNORDERED; final EventFiring firing = synchronous ? EventFiring.SYNCHRONOUS : EventFiring.ASYNCHRONOUS; final boolean requestsOld = config.isOldValueRequired(); for (EventListenerAdaptor<K, V> ehcacheListener : resources.getEhcacheListeners(this, requestsOld)) { ehCache.getRuntimeConfiguration().registerCacheEventListener(ehcacheListener, ordering, firing, EnumSet.of(ehcacheListener.getEhcacheEventType())); } }
static void checkListener(CaffeineConfiguration<?, ?> config) { CacheEntryListenerConfiguration<?, ?> listener = Iterables.getOnlyElement( config.getCacheEntryListenerConfigurations()); assertThat(listener.getCacheEntryListenerFactory().create(), instanceOf(TestCacheEntryListener.class)); assertThat(listener.getCacheEntryEventFilterFactory().create(), instanceOf(TestCacheEntryEventFilter.class)); assertThat(listener.isSynchronous(), is(true)); assertThat(listener.isOldValueRequired(), is(true)); }
@Override public void deregisterCacheEntryListener(CacheEntryListenerConfiguration<K, V> cacheEntryListenerConfiguration) { checkClosed(); if (cacheEntryListenerConfiguration == null) { throw new NullPointerException(); } ListenerResources<K, V> resources = cacheResources.deregisterCacheEntryListener(cacheEntryListenerConfiguration); if (resources != null) { config.removeCacheEntryListenerConfiguration(cacheEntryListenerConfiguration); for (EventListenerAdaptor<K, V> ehListener : resources.getEhcacheListeners(this, cacheEntryListenerConfiguration.isOldValueRequired())) { ehCache.getRuntimeConfiguration().deregisterCacheEventListener(ehListener); } } }
locLsnr, rmtFilterFactory, cfg.isOldValueRequired(), cfg.isSynchronous(), false, locLsnr, jCacheFilter, cfg.isOldValueRequired(), cfg.isSynchronous(), false,
/** * Constructs a {@link MutableCacheEntryListenerConfiguration} based on * another {@link CacheEntryListenerConfiguration}. * * @param configuration the {@link CacheEntryListenerConfiguration} */ public MutableCacheEntryListenerConfiguration(CacheEntryListenerConfiguration<K, V> configuration) { this.listenerFactory = configuration.getCacheEntryListenerFactory(); this.filterFactory = configuration.getCacheEntryEventFilterFactory(); this.isOldValueRequired = configuration.isOldValueRequired(); this.isSynchronous = configuration.isSynchronous(); }
public MutableCacheEntryListenerConfiguration(final CacheEntryListenerConfiguration<K, V> configuration) { this.listenerFactory = configuration.getCacheEntryListenerFactory(); this.filterFactory = configuration.getCacheEntryEventFilterFactory(); this.isOldValueRequired = configuration.isOldValueRequired(); this.isSynchronous = configuration.isSynchronous(); }
public JCSListener(final CacheEntryListenerConfiguration<K, V> cacheEntryListenerConfiguration) { oldValue = cacheEntryListenerConfiguration.isOldValueRequired(); synchronous = cacheEntryListenerConfiguration.isSynchronous(); final Factory<CacheEntryEventFilter<? super K, ? super V>> filterFactory = cacheEntryListenerConfiguration .getCacheEntryEventFilterFactory(); if (filterFactory == null) { filter = NoFilter.INSTANCE; } else { filter = filterFactory.create(); } delegate = cacheEntryListenerConfiguration.getCacheEntryListenerFactory().create(); remove = CacheEntryRemovedListener.class.isInstance(delegate); expire = CacheEntryExpiredListener.class.isInstance(delegate); update = CacheEntryUpdatedListener.class.isInstance(delegate); create = CacheEntryCreatedListener.class.isInstance(delegate); }
public JCSListener(final CacheEntryListenerConfiguration<K, V> cacheEntryListenerConfiguration) { oldValue = cacheEntryListenerConfiguration.isOldValueRequired(); synchronous = cacheEntryListenerConfiguration.isSynchronous(); final Factory<CacheEntryEventFilter<? super K, ? super V>> filterFactory = cacheEntryListenerConfiguration .getCacheEntryEventFilterFactory(); if (filterFactory == null) { filter = NoFilter.INSTANCE; } else { filter = filterFactory.create(); } delegate = cacheEntryListenerConfiguration.getCacheEntryListenerFactory().create(); remove = CacheEntryRemovedListener.class.isInstance(delegate); expire = CacheEntryExpiredListener.class.isInstance(delegate); update = CacheEntryUpdatedListener.class.isInstance(delegate); create = CacheEntryCreatedListener.class.isInstance(delegate); }
private void registerEhcacheListeners(CacheEntryListenerConfiguration<K, V> config, ListenerResources<K, V> resources) { final boolean synchronous = config.isSynchronous(); final EventOrdering ordering = synchronous ? EventOrdering.ORDERED : EventOrdering.UNORDERED; final EventFiring firing = synchronous ? EventFiring.SYNCHRONOUS : EventFiring.ASYNCHRONOUS; final boolean requestsOld = config.isOldValueRequired(); for (EventListenerAdaptor<K, V> ehcacheListener : resources.getEhcacheListeners(this, requestsOld)) { ehCache.getRuntimeConfiguration().registerCacheEventListener(ehcacheListener, ordering, firing, EnumSet.of(ehcacheListener.getEhcacheEventType())); } }
@Override public void deregisterCacheEntryListener(CacheEntryListenerConfiguration<K, V> cacheEntryListenerConfiguration) { checkClosed(); if (cacheEntryListenerConfiguration == null) { throw new NullPointerException(); } ListenerResources<K, V> resources = cacheResources.deregisterCacheEntryListener(cacheEntryListenerConfiguration); if (resources != null) { config.removeCacheEntryListenerConfiguration(cacheEntryListenerConfiguration); for (EventListenerAdaptor<K, V> ehListener : resources.getEhcacheListeners(this, cacheEntryListenerConfiguration.isOldValueRequired())) { ehCache.getRuntimeConfiguration().deregisterCacheEventListener(ehListener); } } }
locLsnr, rmtFilterFactory, cfg.isOldValueRequired(), cfg.isSynchronous(), false, locLsnr, jCacheFilter, cfg.isOldValueRequired(), cfg.isSynchronous(), false,
this.isOldValueRequired = cacheEntryListenerConfiguration.isOldValueRequired();
this.isOldValueRequired = cacheEntryListenerConfiguration.isOldValueRequired();
updatedListener = implementsMethods(CacheEntryUpdatedListener.class); expiredListener = implementsMethods(CacheEntryExpiredListener.class); oldValueRequired = cacheEntryListenerConfiguration.isOldValueRequired(); synchronous = cacheEntryListenerConfiguration.isSynchronous(); if(cacheEntryListenerConfiguration.getCacheEntryEventFilterFactory() != null) {
updatedListener = implementsMethods(CacheEntryUpdatedListener.class); expiredListener = implementsMethods(CacheEntryExpiredListener.class); oldValueRequired = cacheEntryListenerConfiguration.isOldValueRequired(); synchronous = cacheEntryListenerConfiguration.isSynchronous(); if(cacheEntryListenerConfiguration.getCacheEntryEventFilterFactory() != null) {
@Test public void testDynamicRegistration() { assertEquals(1, getConfigurationCacheEntryListenerConfigurationSize(cache)); MyCacheEntryListener secondListener = new MyCacheEntryListener<Long, String>(oldValueRequired); MutableCacheEntryListenerConfiguration<Long, String> listenerConfiguration = new MutableCacheEntryListenerConfiguration(FactoryBuilder.factoryOf(secondListener), null, oldValueRequired, true); cache.registerCacheEntryListener(listenerConfiguration); assertEquals(2,getConfigurationCacheEntryListenerConfigurationSize(cache)); CompleteConfiguration<Long, String> cacheConfig = (CompleteConfiguration)cache.getConfiguration(CompleteConfiguration.class); for (CacheEntryListenerConfiguration<Long, String> config : cacheConfig.getCacheEntryListenerConfigurations()) { config.hashCode(); config.isOldValueRequired(); config.isSynchronous(); } //Can only register the same configuration once try { cache.registerCacheEntryListener(listenerConfiguration); fail(); } catch (IllegalArgumentException e) { //expected } }