private CacheListener wrapRegionMembershipListener(CacheListener listener) {
    if (listener instanceof RegionMembershipListener) {
      return new WrappedRegionMembershipListener((RegionMembershipListener) listener);
    }
    return listener;
  }
We wrap RegionMembershipListeners in a container when adding them at runtime, so that we can
properly initialize their membership set prior to delivering events to them.

@param listener a cache listener to be added to the region
geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegion.java