/** * Does a region unregisterInterestList on a server * * @param keys list of keys we are interested in * @param isClosing true if this unregister is done by a close * @param keepAlive true if this unregister should not undo a durable registration */ public void unregisterInterestList(List keys, boolean isClosing, boolean keepAlive) { RegisterInterestTracker rit = this.pool.getRITracker(); boolean removed = rit.removeInterestList(this.region, keys, false, true) || rit.removeInterestList(this.region, keys, false, false) || rit.removeInterestList(this.region, keys, true, true) || rit.removeInterestList(this.region, keys, true, false); if (removed) { UnregisterInterestListOp.execute(this.pool, this.regionName, keys, isClosing, keepAlive); } }
public void removeListInterest(List keys, boolean isDurable, boolean receiveUpdatesAsInvalidates) { this.pool.getRITracker().removeInterestList(this.region, keys, isDurable, receiveUpdatesAsInvalidates); }
public void addListInterest(List keys, InterestResultPolicy pol, boolean isDurable, boolean receiveUpdatesAsInvalidates) { RegisterInterestTracker rit = this.pool.getRITracker(); boolean finished = false; try { rit.addInterestList(this.region, keys, pol, isDurable, receiveUpdatesAsInvalidates); finished = true; } finally { if (!finished) { rit.removeInterestList(this.region, keys, isDurable, receiveUpdatesAsInvalidates); } } }
} finally { if (!finished) { rit.removeInterestList(this.region, keys, isDurable, receiveUpdatesAsInvalidates);