public AttributesMutator getAttributesMutator() { return this.region.getAttributesMutator(); }
@Override @SuppressWarnings("rawtypes") public void addCacheListener(CacheListener listener) { AttributesMutator mutator = this.region.getAttributesMutator(); mutator.addCacheListener(listener); }
@Override public void visit(Integer bucketId, Region r) { AttributesMutator mut = r.getAttributesMutator(); if (logger.isDebugEnabled()) { logger.debug("setting new cache loader in bucket region: {}", newLoader); } mut.setCacheLoader(newLoader); } });
public WindowImpl(Region<K, V> region, final DistributedMember sink, int size) { permits = new Semaphore(size); abort = new AtomicBoolean(false); this.region = region; crash = new RegionMembershipListenerAdapter<K, V>() { @Override public void afterRemoteRegionCrash(RegionEvent<K, V> event) { if (event.getDistributedMember().equals(sink)) { if (getLogger().fineEnabled()) getLogger().fine("SNP: " + sink + " has crashed, closing window"); abort(); } } }; region.getAttributesMutator().addCacheListener(crash); }
@Override public void close() { instance.processors.remove(windowId); region.getAttributesMutator().removeCacheListener(crash); permits.release(MAX_PERMITS); }
/** * Change the existing region to have * the JdbcLoader as its cache-loader * and the given async-event-queue as one of its queues. */ private void alterRegion(Region<?, ?> region, String queueName, boolean synchronous) { region.getAttributesMutator().setCacheLoader(new JdbcLoader()); if (synchronous) { region.getAttributesMutator().setCacheWriter(new JdbcWriter()); } else { region.getAttributesMutator().addAsyncEventQueueId(queueName); } }
@Override public void run2() throws CacheException { Region<Object, Object> region = createRegion(name); setWriter(new TestCacheWriter<Object, Object>() {}); region.getAttributesMutator().setCacheWriter(writer()); } };
@Override public void run2() throws CacheException { Region<Object, Object> region = createRegion(name); region.getAttributesMutator().setCacheLoader(new TestCacheLoader<Object, Object>() { @Override public Object load2(LoaderHelper<Object, Object> helper) throws CacheLoaderException { return value; } }); } });
@Override public void run2() throws CacheException { final Region<Object, Object> region = getRootRegion().getSubregion(name); setWriter(new TestCacheWriter<Object, Object>() { @Override public void beforeCreate2(EntryEvent<Object, Object> event) throws CacheWriterException { Object[] array = (Object[]) event.getCallbackArgument(); assertThat(array[0]).isEqualTo(two); } }); region.getAttributesMutator().setCacheWriter(writer()); flushIfNecessary(region); } });
@Override public void run2() throws CacheException { Region<Object, Object> region = createRegion(name); setLoader(new TestCacheLoader<Object, Object>() { @Override public Object load2(LoaderHelper<Object, Object> helper) throws CacheLoaderException { if (helper.getRegion().getAttributes().getPartitionAttributes() == null) { fail("Should not be invoked"); return null; } else { return value; } } }); region.getAttributesMutator().setCacheLoader(loader()); } };
@Override @SuppressWarnings("rawtypes") public void removeCacheListener() { AttributesMutator mutator = this.region.getAttributesMutator(); CacheListener[] listeners = this.region.getAttributes().getCacheListeners(); for (int i = 0; i < listeners.length; i++) { if (listeners[i] instanceof SerialSecondaryGatewayListener) { mutator.removeCacheListener(listeners[i]); break; } } }
/** * Changes the custom timeToLive for values in this region * * @param custom the new CustomExpiry * @return the old CustomExpiry */ @Override public CustomExpiry setCustomEntryTimeToLive(CustomExpiry custom) { CustomExpiry expiry = super.setCustomEntryTimeToLive(custom); // Set to Bucket regions as well dataStore.lockBucketCreationAndVisit( (bucketId, r) -> r.getAttributesMutator().setCustomEntryTimeToLive(custom)); return expiry; }
/** * Changes the CustomExpiry for idleTimeout for values in the region * * @param custom the new CustomExpiry * @return the old CustomExpiry */ @Override public CustomExpiry setCustomEntryIdleTimeout(CustomExpiry custom) { CustomExpiry expiry = super.setCustomEntryIdleTimeout(custom); // Set to Bucket regions as well dataStore.lockBucketCreationAndVisit( (bucketId, r) -> r.getAttributesMutator().setCustomEntryIdleTimeout(custom)); return expiry; }
public static void addCacheListenerAndCloseCache(String regionName) { final Region region = cache.getRegion(Region.SEPARATOR + regionName); assertNotNull(region); CacheListenerAdapter cl = new CacheListenerAdapter() { @Override public void afterCreate(EntryEvent event) { if ((Long) event.getKey() == 900) { cache.getLogger().fine(" Gateway sender is killed by a test"); cache.close(); cache.getDistributedSystem().disconnect(); } } }; region.getAttributesMutator().addCacheListener(cl); }
@Test public void executeAlterRegionLoader() throws Exception { function.executeFunction(context); verify(service, times(1)).createRegionMapping(regionMapping); AttributesMutator mutator = region.getAttributesMutator(); verify(mutator, times(1)).setCacheLoader(any()); }
@Test public void executeWithSynchronousAltersRegionWriter() throws Exception { setupSynchronous(); function.executeFunction(context); AttributesMutator mutator = region.getAttributesMutator(); verify(mutator, times(1)).setCacheWriter(any()); }
@Test public void executeWithSynchronousNeverAltersRegionAsyncEventQueue() throws Exception { setupSynchronous(); function.executeFunction(context); AttributesMutator mutator = region.getAttributesMutator(); verify(mutator, never()).addAsyncEventQueueId(any()); }
@Test public void executeAlterRegionAsyncEventQueue() throws Exception { String queueName = CreateMappingCommand.createAsyncEventQueueName(REGION_NAME); function.executeFunction(context); verify(service, times(1)).createRegionMapping(regionMapping); AttributesMutator mutator = region.getAttributesMutator(); verify(mutator, times(1)).addAsyncEventQueueId(queueName); }
@Override public void run2() throws CacheException { final Region<Object, Object> region = getRootRegion().getSubregion(name); if (region.getAttributes().getPartitionAttributes() != null) { setLoader(new TestCacheLoader<Object, Object>() { @Override public Object load2(LoaderHelper<Object, Object> helper) throws CacheLoaderException { Object[] array = (Object[]) helper.getArgument(); assertThat(array[0]).isEqualTo(one); array[0] = two; return value; } }); region.getAttributesMutator().setCacheLoader(loader()); } } });
public static void registerInterest() { Cache cache = new ClientServerMiscDUnitTestBase().getCache(); Region r = cache.getRegion(Region.SEPARATOR + REGION_NAME2); assertNotNull(r); r.registerInterest("ALL_KEYS"); r.getAttributesMutator().addCacheListener(new MemberIDVerifier()); }