RegionMembershipListener (Apache Geode 2.0.2)
Description: declaration: package: org.apache.geode.cache, interface: RegionMembershipListener

Package org.apache.geode.cache

# Interface RegionMembershipListener<K,V>

All Superinterfaces:
  `CacheCallback`, `CacheListener<K,V>`, `Declarable`

All Known Implementing Classes:
  `RegionMembershipListenerAdapter`, `RegionRoleListenerAdapter`

public interface RegionMembershipListener<K,V> extends CacheListener<K,V>
A listener that can be implemented to handle region membership events.

Instead of implementing this interface it is recommended that you extend the `RegionMembershipListenerAdapter` class.

Since:
  GemFire 5.0
See Also:
  - `AttributesFactory.addCacheListener(org.apache.geode.cache.CacheListener<K, V>)`
  - `AttributesFactory.initCacheListeners(org.apache.geode.cache.CacheListener<K, V>[])`
  - `RegionAttributes.getCacheListeners()`
  - `AttributesMutator.addCacheListener(org.apache.geode.cache.CacheListener<K, V>)`
  - `AttributesMutator.removeCacheListener(org.apache.geode.cache.CacheListener<K, V>)`
  - `AttributesMutator.initCacheListeners(org.apache.geode.cache.CacheListener<K, V>[])`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `afterRemoteRegionCrash(RegionEvent<K,V> event)`
  Invoked when another member's distributed region is no longer available to this cache because the member has crashed or is no longer reachable on the network.
  `void`
  `afterRemoteRegionCreate(RegionEvent<K,V> event)`
  Invoked when another member has created the distributed region this listener is on.
  `void`
  `afterRemoteRegionDeparture(RegionEvent<K,V> event)`
  Invoked when another member's distributed region is no longer available to this cache due to normal operations.
  `void`
  `initialMembers(Region<K,V> region, DistributedMember[] initialMembers)`
  Invoked when the listener is first initialized and is given the set of members that have the region created at that time.

  ### Methods inherited from interface org.apache.geode.cache.CacheCallback

  `close`

  ### Methods inherited from interface org.apache.geode.cache.CacheListener

  `afterCreate, afterDestroy, afterInvalidate, afterRegionClear, afterRegionCreate, afterRegionDestroy, afterRegionInvalidate, afterRegionLive, afterUpdate`

  ### Methods inherited from interface org.apache.geode.cache.Declarable

  `init, initialize`

- ## Method Details

  - ### initialMembers

    void initialMembers(Region<K,V> region, DistributedMember[] initialMembers)
    Invoked when the listener is first initialized and is given the set of members that have the region created at that time. The listener is initialized when:
    - the region is created with an already added listener
    - a listener is added using the `AttributesMutator`.
    Parameters:
      `region` - the `Region` the listener is registered on
      `initialMembers` - an array of the other members that have this region at the time this listener is added.

  - ### afterRemoteRegionCreate

    void afterRemoteRegionCreate(RegionEvent<K,V> event)
    Invoked when another member has created the distributed region this listener is on.
    Parameters:
      `event` - the event from the member whose region was created.

  - ### afterRemoteRegionDeparture

    void afterRemoteRegionDeparture(RegionEvent<K,V> event)
    Invoked when another member's distributed region is no longer available to this cache due to normal operations. This can be triggered by one of the following methods:
    - `Region.localDestroyRegion()`
    - `Region.close()`
    - `RegionService.close()`
    This differs from afterRemoteRegionCrash notification in that the departed member performed an action either to remove its region or to close its region or cache.
    Parameters:
      `event` - the event from the member whose region is no longer available.

  - ### afterRemoteRegionCrash

    void afterRemoteRegionCrash(RegionEvent<K,V> event)
    Invoked when another member's distributed region is no longer available to this cache because the member has crashed or is no longer reachable on the network.

    Parameters:
      `event` - the event from the member whose region is no longer available.