private void doAfterRegionCreated(Region region, boolean distributed, boolean isOriginRemote, DistributedMember mbr) { RegionEvent event = new RegionEventImpl(region, Operation.REGION_CREATE, null, isOriginRemote, getMember(mbr)); for (Object regionListener : regionListeners) { DynamicRegionListener listener = (DynamicRegionListener) regionListener; try { listener.afterRegionCreate(event /* region */); } catch (VirtualMachineError err) { SystemFailure.initiateFailure(err); // If this ever returns, rethrow the error. We're poisoned // now, so don't let this thread continue. throw err; } catch (Throwable t) { // Whenever you catch Error or Throwable, you must also // catch VirtualMachineError (see above). However, there is // _still_ a possibility that you are dealing with a cascading // error condition, so you also need to check to see if the JVM // is still usable: SystemFailure.checkFailure(); this.cache.getLogger().warning( String.format("DynamicRegionListener %s threw exception on afterRegionCreated", listener), t); } } }
op = expiration ? Operation.REGION_EXPIRE_DESTROY : Operation.REGION_DESTROY; RegionEvent event = new RegionEventImpl(region, op, null, isOriginRemote, getMember(mbr)); for (Object regionListener : regionListeners) { DynamicRegionListener listener = (DynamicRegionListener) regionListener;
op = expiration ? Operation.REGION_EXPIRE_DESTROY : Operation.REGION_DESTROY; RegionEvent event = new RegionEventImpl(region, op, null, isOriginRemote, getMember(mbr)); for (Object regionListener : regionListeners) { DynamicRegionListener listener = (DynamicRegionListener) regionListener;
DistributedMember mbr = getMember(null); doBeforeRegionDestroyed(region, false, false, false, mbr);