protected GatewaySenderEventImpl makeCopy() { return new GatewaySenderEventImpl(this); }
@Override public void enqueueEvent(EnumListenerEvent operation, EntryEvent event, Object substituteValue) throws IOException, CacheException { GatewaySenderEventImpl gatewayQueueEvent = null; Region region = event.getRegion(); if (!(region instanceof DistributedRegion) && ((EntryEventImpl) event).getTailKey() == -1) { // In case of parallel sender, we don't expect the key to be not set. // If it is the case then the event must be coming from notificationOnly message. // Don't enqueue the event and return from here only. // Fix for #49081 and EntryDestroyedException in #49367. if (logger.isDebugEnabled()) { logger.debug( "ParallelGatewaySenderEventProcessor not enqueing the following event since tailKey is not set. {}", event); } return; } // TODO: Looks like for PDX region bucket id is set to -1. EventID eventID = ((EntryEventImpl) event).getEventId(); // while merging 42004, kept substituteValue as it is(it is barry's // change 42466). bucketID is merged with eventID.getBucketID gatewayQueueEvent = new GatewaySenderEventImpl(operation, event, substituteValue, true, eventID.getBucketID()); enqueueEvent(gatewayQueueEvent); }
event.setCallbackArgument(geCallbackArg); GatewaySenderEventImpl pdxSenderEvent = new GatewaySenderEventImpl(EnumListenerEvent.AFTER_UPDATE, event, null); // OFFHEAP:
@Test public void setsEventOldValueToExistingRegionEntryValue_ifOldValueIsGatewaySenderEvent() { givenExistingRegionEntry(); GatewaySenderEventImpl oldValue = new GatewaySenderEventImpl(); when(existingRegionEntry.getValue()).thenReturn(oldValue); doPut(); verify(event, times(1)).setOldValue(same(oldValue), eq(true)); verify(event, never()).setOldValue(not(same(oldValue)), eq(true)); }
public static GatewaySenderEventImpl createGatewaySenderEvent(LocalRegion lr, Operation operation, Object key, Object value, long sequenceId, long shadowKey) throws Exception { when(lr.getKeyInfo(key, value, null)).thenReturn(new KeyInfo(key, null, null)); EntryEventImpl eei = EntryEventImpl.create(lr, operation, key, value, null, false, null); eei.setEventId(new EventID(new byte[16], 1l, sequenceId)); GatewaySenderEventImpl gsei = new GatewaySenderEventImpl(getEnumListenerEvent(operation), eei, null); gsei.setShadowKey(shadowKey); return gsei; }
if (!(isUpdateVersionStamp || isCME_And_NotOriginRemote)) { senderEvent = new GatewaySenderEventImpl(operation, event, substituteValue, false); handleSecondaryEvent(senderEvent); senderEvent = new GatewaySenderEventImpl(operation, event, substituteValue); // OFFHEAP ok