/** {@inheritDoc} */ @Override public void onEvent(Event evt) { assert evt != null; assert evt.type() == EVT_CACHE_OBJECT_REMOVED || evt.type() == EVT_CACHE_OBJECT_EXPIRED; CacheEvent e = (CacheEvent)evt; if (!F.eq(e.cacheName(), cacheName)) return; if (e.oldValue() != null) { CheckpointListener tmp = lsnr; if (tmp != null) tmp.onCheckpointRemoved((String)e.key()); } } }, EVT_CACHE_OBJECT_REMOVED, EVT_CACHE_OBJECT_EXPIRED);
@Override public boolean apply(Event evt) { CacheEvent evt0 = (CacheEvent)evt; if (evt0.closureClassName() != null) { System.out.println("ADDED: [nodeId=" + evt0.node() + ", evt=" + evt0 + ']'); evts.add(evt0); } return true; } }, EVT_CACHE_OBJECT_READ);
writer.writeString(event0.cacheName()); writer.writeInt(event0.partition()); writer.writeBoolean(event0.isNear()); writeNode(writer, event0.eventNode()); writer.writeObject(event0.key()); writer.writeObject(event0.xid()); writer.writeObject(event0.newValue()); writer.writeObject(event0.oldValue()); writer.writeBoolean(event0.hasOldValue()); writer.writeBoolean(event0.hasNewValue()); writer.writeUuid(event0.subjectId()); writer.writeString(event0.closureClassName()); writer.writeString(event0.taskName());
/** * @param evts Events. * @param g Grid. * @param keys Keys. */ private void checkObjectUnloadEvents(Collection<Event> evts, Ignite g, Collection<?> keys) { assertEquals(keys.size(), evts.size()); for (Event evt : evts) { CacheEvent cacheEvt = ((CacheEvent)evt); assertEquals(EVT_CACHE_REBALANCE_OBJECT_UNLOADED, cacheEvt.type()); assertEquals(g.cache(DEFAULT_CACHE_NAME).getName(), cacheEvt.cacheName()); assertEquals(g.cluster().localNode().id(), cacheEvt.node().id()); assertEquals(g.cluster().localNode().id(), cacheEvt.eventNode().id()); assertTrue("Unexpected key: " + cacheEvt.key(), keys.contains(cacheEvt.key())); } }
/** * @param evts Events. * @param g Grid. * @param keys Keys. */ protected void checkPreloadEvents(Collection<Event> evts, Ignite g, Collection<? extends Object> keys) { assertEquals(keys.size(), evts.size()); for (Event evt : evts) { CacheEvent cacheEvt = (CacheEvent)evt; assertEquals(EVT_CACHE_REBALANCE_OBJECT_LOADED, cacheEvt.type()); assertEquals(g.cache(DEFAULT_CACHE_NAME).getName(), cacheEvt.cacheName()); assertEquals(g.cluster().localNode().id(), cacheEvt.node().id()); assertEquals(g.cluster().localNode().id(), cacheEvt.eventNode().id()); assertTrue(cacheEvt.hasNewValue()); assertNotNull(cacheEvt.newValue()); assertTrue("Unexpected key: " + cacheEvt.key(), keys.contains(cacheEvt.key())); } } }
@Override public boolean apply(Event evt) { CacheEvent e = (CacheEvent)evt; switch (e.type()) { case EVT_CACHE_OBJECT_PUT: ", name=" + e.name() + ", key=" + e.key() + ", oldVal=" + e.oldValue() + ", newVal=" + e.newValue() + ']'); Collection<? extends ClusterNode> affNodes = nodes(affinity(ignite), e.key()); fail("Key should not be mapped to node [key=" + e.key() + ", node=" + ignite.name() + ']');
int part = cacheEvt.partition(); if (TEST_CACHE_NAME.equals(cacheEvt.cacheName())) { switch (evt.type()) { case EventType.EVT_CACHE_OBJECT_PUT: { ensureKeySet(part).add(ensureKey(cacheEvt.key())); break; ensureKeySet(part, loadingMap).add(ensureKey(cacheEvt.key())); break; ensureKeySet(part).remove(ensureKey(cacheEvt.key())); break;
/** {@inheritDoc} */ @Override public boolean apply(Event evt) { info("Received cache event: " + evt); if (evt instanceof CacheEvent) { CacheEvent cacheEvt = (CacheEvent)evt; Integer key = cacheEvt.key(); if (keys.contains(key)) if (evt.type() == EVT_CACHE_OBJECT_UNLOCKED) latch.countDown(); } return true; } }
/** {@inheritDoc} */ @Override public boolean apply(UUID id, CacheEvent evt) { try { if (!evtBuf.offer(evt, 10, TimeUnit.MILLISECONDS)) log.error("Failed to buffer event {}", evt.name()); } catch (InterruptedException e) { e.printStackTrace(); } return true; } }
Event evt = new CacheEvent( cacheDesc.cacheName(), cctx.localNode(),
@Override public boolean apply(Event evt) { CacheEvent e = (CacheEvent) evt; oldVal.set((String) e.oldValue()); latch.countDown(); return true; } }, EventType.EVT_CACHE_ENTRY_EVICTED);
@Override public boolean apply(Event evt) { CacheEvent evt0 = (CacheEvent)evt; if (evt0.closureClassName() != null) evts.add(evt0); return true; } }, EVT_CACHE_OBJECT_READ);
writer.writeString(event0.cacheName()); writer.writeInt(event0.partition()); writer.writeBoolean(event0.isNear()); writeNode(writer, event0.eventNode()); writer.writeObject(event0.key()); writer.writeObject(event0.xid()); writer.writeObject(event0.newValue()); writer.writeObject(event0.oldValue()); writer.writeBoolean(event0.hasOldValue()); writer.writeBoolean(event0.hasNewValue()); writer.writeUuid(event0.subjectId()); writer.writeString(event0.closureClassName()); writer.writeString(event0.taskName());
/** * Constructor. * * @param cache {@link IgniteCache} instance. * @param vertx {@link Vertx} instance. */ public AsyncMultiMapImpl(IgniteCache<K, Set<V>> cache, Vertx vertx) { cache.unwrap(Ignite.class).events().localListen((IgnitePredicate<Event>)event -> { if (!(event instanceof CacheEvent)) { throw new IllegalArgumentException("Unknown event received: " + event); } CacheEvent cacheEvent = (CacheEvent)event; if (Objects.equals(cacheEvent.cacheName(), cache.getName()) && ((IgniteCacheProxy)cache).context().localNodeId().equals(cacheEvent.eventNode().id())) { K key = unmarshal(cacheEvent.key()); switch (cacheEvent.type()) { case EVT_CACHE_OBJECT_REMOVED: subs.remove(key); break; default: throw new IllegalArgumentException("Unknown event received: " + event); } } return true; }, EVT_CACHE_OBJECT_REMOVED); this.cache = cache; this.vertx = (VertxInternal) vertx; }
/** {@inheritDoc} */ @Override public boolean apply(CacheEvent evt) { Affinity<Object> affinity = ignite.affinity(cacheName); // Process this event. Ignored on backups. return affinity.isPrimary(ignite.cluster().localNode(), evt.key()) && (filter == null || filter.apply(evt)); } }