Package org.apache.geode.cache.partition
Interface PartitionListener
- All Known Implementing Classes:
PartitionListenerAdapter
public interface PartitionListener
A callback for partitioned regions, invoked when a partition region is created or any bucket is
created/deleted or any bucket in a partitioned region becomes primary.
It is highly recommended that implementations of this listener should be quick and not try to manipulate regions and data because the the callbacks are invoked while holding locks that may block region operations.
It is highly recommended that implementations of this listener should be quick and not try to manipulate regions and data because the the callbacks are invoked while holding locks that may block region operations.
package com.myCompany.MyPartitionListener;
public class MyPartitionListener extends PartitionListenerAdapter implements Declarable {
private String regionName;
public MyPartitionListener() {}
public void afterPrimary(int bucketId) {
System.out.println("bucket:" + bucketId + " has become primary on " + this.regionName);
}
public void afterRegionCreate(Region<?, ?> region) {
this.regionName = region.getName();
}
}
A sample declaration of the MyPartitionListener in cache.xml as follows :
<partition-attributes redundant-copies="1">
<partition-listener>
<class-name>com.myCompany.MyPartitionListener</class-name>
</partition-listener>
</partition-attributes>
- Since:
- GemFire 6.5
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoidafterBucketCreated(int bucketId, Iterable<?> keys) Callback invoked after a bucket has been created in a member (e.g.voidafterBucketRemoved(int bucketId, Iterable<?> keys) Callback invoked after a bucket has been removed from a member (e.g.voidafterPrimary(int bucketId) Callback invoked when any bucket in a partitioned region becomes primaryvoidafterRegionCreate(Region<?, ?> region) Callback invoked when a partition region is createddefault voidafterSecondary(int bucketId) Callback invoked when any bucket in a partitioned region stops being primary
-
Method Details
-
afterPrimary
void afterPrimary(int bucketId) Callback invoked when any bucket in a partitioned region becomes primary- Parameters:
bucketId- id of the bucket which became primary- Since:
- GemFire 6.5
-
afterSecondary
default void afterSecondary(int bucketId) Callback invoked when any bucket in a partitioned region stops being primary- Parameters:
bucketId- id of the bucket which stopped being primary- Since:
- Geode 1.1
-
afterRegionCreate
Callback invoked when a partition region is created- Parameters:
region- handle of the region which is created- Since:
- GemFire 6.5
-
afterBucketRemoved
Callback invoked after a bucket has been removed from a member (e.g. during rebalancing). This API is useful for maintaining external data structures by bucket id or key.- Parameters:
bucketId- id of the bucket removedkeys- keys in the bucket removed- Since:
- GemFire 6.6.1
-
afterBucketCreated
Callback invoked after a bucket has been created in a member (e.g. during rebalancing). This API is useful for maintaining external data structures by bucket id or key. Note that this API is invoked after the initial image has been completed so creates and destroys may occur in the keys. It is best to use this API during periods of no cache activity.- Parameters:
bucketId- id of the bucket createdkeys- keys in the bucket created- Since:
- GemFire 6.6.1
-