@Override public Boolean getPdxReadSerializedOverride() { return delegate.getPdxReadSerializedOverride(); }
private PdxInstance getPdxNewValue(EntryEvent<K, V> event) { Boolean initialPdxReadSerialized = cache.getPdxReadSerializedOverride(); cache.setPdxReadSerializedOverride(true); try { Object newValue = event.getNewValue(); if (!(newValue instanceof PdxInstance)) { SerializedCacheValue<V> serializedNewValue = event.getSerializedNewValue(); if (serializedNewValue != null) { newValue = serializedNewValue.getDeserializedValue(); } else { newValue = CopyHelper.copy(newValue); } if (newValue != null && !(newValue instanceof PdxInstance)) { String valueClassName = newValue.getClass().getName(); throw new IllegalArgumentException(getClass().getSimpleName() + " only supports PDX values; newValue is " + valueClassName); } } return (PdxInstance) newValue; } finally { cache.setPdxReadSerializedOverride(initialPdxReadSerialized); } }
@Override public void processEvents(CacheEvent event, Profile localProfile, Profile[] profiles, FilterRoutingInfo frInfo) throws CqException { // Is this a region event or an entry event if (event instanceof RegionEvent) { processRegionEvent(event, localProfile, profiles, frInfo); } else { // Use the PDX types in serialized form. Boolean initialPdxReadSerialized = this.cache.getPdxReadSerializedOverride(); this.cache.setPdxReadSerializedOverride(true); try { processEntryEvent(event, localProfile, profiles, frInfo); } finally { this.cache.setPdxReadSerializedOverride(initialPdxReadSerialized); } } }
@Test public void pdxReadSerializedFlagShouldBeResetBackToOriginalValueAfterProcessingEvents() { ArgumentCaptor valueCapture = ArgumentCaptor.forClass(Boolean.class); doNothing().when(cache).setPdxReadSerializedOverride((Boolean) valueCapture.capture()); boolean originalPdxReadSerialized = cache.getPdxReadSerializedOverride(); try { cache.setPdxReadSerializedOverride(true); Assert.assertTrue((Boolean) valueCapture.getValue()); listener.process(new LinkedList<>()); Assert.assertTrue(!(Boolean) valueCapture.getValue()); } finally { cache.setPdxReadSerializedOverride(originalPdxReadSerialized); } }
cache = (InternalCache) GemFireCacheImpl.getForPdx("fromData invocation in StreamingOperation"); initialPdxReadSerialized = cache.getPdxReadSerializedOverride(); } catch (CacheClosedException e) { logger.debug("Cache is closed. PdxReadSerializedOverride set to false");
Boolean initialPdxReadSerialized = pr.getCache().getPdxReadSerializedOverride(); pr.getCache().setPdxReadSerializedOverride(true);
boolean oldReadSerialized = this.cache.getPdxReadSerializedOverride(); this.cache.setPdxReadSerializedOverride(true);
boolean oldReadSerialized = this.cache.getPdxReadSerializedOverride(); this.cache.setPdxReadSerializedOverride(true); try {
@Override public boolean processEvents(List<AsyncEvent> events) { changeTotalEvents(events.size()); if (!events.isEmpty()) { checkInitialized((InternalCache) events.get(0).getRegion().getRegionService()); } Boolean initialPdxReadSerialized = cache.getPdxReadSerializedOverride(); cache.setPdxReadSerializedOverride(true); try { for (AsyncEvent event : events) { if (eventCanBeIgnored(event.getOperation())) { changeIgnoredEvents(1); continue; } try { getSqlHandler().write(event.getRegion(), event.getOperation(), event.getKey(), getPdxInstance(event)); changeSuccessfulEvents(1); } catch (SQLException | RuntimeException ex) { changeFailedEvents(1); logger.error("Exception processing event {}", event, ex); } } } finally { cache.setPdxReadSerializedOverride(initialPdxReadSerialized); } return true; }
Boolean initialPdxReadSerialized = this.cache.getPdxReadSerializedOverride(); this.cache.setPdxReadSerializedOverride(true); TXStateProxy tx = null;
protected boolean process(final List<AsyncEvent> events) { Boolean initialPdxReadSerialized = this.cache.getPdxReadSerializedOverride(); cache.setPdxReadSerializedOverride(true);
boolean initialPdxReadSerializedFlag = cache.getPdxReadSerializedOverride(); cache.setPdxReadSerializedOverride(true); try {
Boolean initialPdxReadSerialized = this.cache.getPdxReadSerializedOverride(); try {