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

Package org.apache.geode.cache

# Interface CacheEvent<K,V>

All Known Subinterfaces:
  `EntryEvent<K,V>`, `RegionEvent<K,V>`, `RoleEvent<K,V>`, `TimestampedEntryEvent`

public interface CacheEvent<K,V>
A region- or entry-related event affecting the cache.

Prior to release `6.0` the `NOT_AVAILABLE` constant was used to indicate an object value was not available. However in `6.0` generic typing was added to `Region` and since this constant's type will not be an instance of the generic type `V` returning it would cause a ClassCastException. So in `6.0` and later `null` is now used in place of `NOT_AVAILABLE`.

Since:
  GemFire 2.0
See Also:
  - `CacheListener`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `getCallbackArgument()`
  Returns the callbackArgument passed to the method that generated this event.
  `DistributedMember`
  `getDistributedMember()`
  Returns the `DistributedMember` that this event originated in.
  `Operation`
  `getOperation()`
  Return a description of the operation that triggered this event.
  `Region<K,V>`
  `getRegion()`
  Returns the region to which this cached object belongs or the region that raised this event for `RegionEvent`s.
  `boolean`
  `isCallbackArgumentAvailable()`
  Returns `true` if the callback argument is "available".
  `boolean`
  `isOriginRemote()`
  Answer true if this event originated in a cache other than this one.

- ## Method Details

  - ### getRegion

    Region<K,V> getRegion()
    Returns the region to which this cached object belongs or the region that raised this event for `RegionEvent`s.
    Returns:
      the region associated with this object or the region that raised this event.

  - ### getOperation

    Operation getOperation()
    Return a description of the operation that triggered this event.
    Returns:
      the operation that triggered this event.
    Since:
      GemFire 5.0

  - ### getCallbackArgument

    Object getCallbackArgument()
    Returns the callbackArgument passed to the method that generated this event. Provided primarily in case this object or region has already been destroyed. See the `Region` interface methods that take a callbackArgument parameter.
    Returns:
      the callbackArgument associated with this event. `null` is returned if the callback argument is not propagated to the event. This happens for events given to `TransactionListener` and to `CacheListener` on the remote side of a transaction commit.

  - ### isCallbackArgumentAvailable

    boolean isCallbackArgumentAvailable()
    Returns `true` if the callback argument is "available". Not available means that the callback argument may have existed but it could not be obtained. Note that `getCallbackArgument()` will return `null` when this method returns `false`.
    Returns:
      whether the callback argument is "available"
    Since:
      GemFire 6.0

  - ### isOriginRemote

    boolean isOriginRemote()
    Answer true if this event originated in a cache other than this one. Answer false if this event originated in this cache.
    Returns:
      true if this event originated remotely

  - ### getDistributedMember

    DistributedMember getDistributedMember()
    Returns the `DistributedMember` that this event originated in.
    Returns:
      the member that performed the operation that originated this event.
    Since:
      GemFire 5.0