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

Package org.apache.geode.cache.wan

# Interface GatewayEventFilter

All Superinterfaces:
  `CacheCallback`, `Declarable`

public interface GatewayEventFilter extends CacheCallback
Callback for users to filter out events before dispatching to remote distributed system

Since:
  GemFire 7.0

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `afterAcknowledgement(GatewayQueueEvent event)`
  It will be invoked once GatewaySender receives an ack from remote GatewayReceiver
  This callback will always be called from the thread which is dispatching events to remote distributed systems
  `boolean`
  `beforeEnqueue(GatewayQueueEvent event)`
  It will be invoked before enqueuing event into GatewaySender's queue.
  `boolean`
  `beforeTransmit(GatewayQueueEvent event)`
  It will be invoked before dispatching event to remote GatewayReceiver
  This callback is asynchronous with the thread which is enqueuing the event into GatewaySender's queue.
  This callback will always be called from the thread which is dispatching events to remote distributed systems

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

  `close`

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

  `init, initialize`

- ## Method Details

  - ### beforeEnqueue

    boolean beforeEnqueue(GatewayQueueEvent event)
    It will be invoked before enqueuing event into GatewaySender's queue.
    This callback is synchronous with the thread which is enqueuing the event into GatewaySender's queue.
    Parameters:
      `event` - the triggering `GatewayQueueEvent`
    Returns:
      true if event should be enqueued otherwise return false.

  - ### beforeTransmit

    boolean beforeTransmit(GatewayQueueEvent event)
    It will be invoked before dispatching event to remote GatewayReceiver
    This callback is asynchronous with the thread which is enqueuing the event into GatewaySender's queue.
    This callback will always be called from the thread which is dispatching events to remote distributed systems
    Parameters:
      `event` - the triggering `GatewayQueueEvent`
    Returns:
      true if event should be dispatched otherwise return false.

  - ### afterAcknowledgement

    void afterAcknowledgement(GatewayQueueEvent event)
    It will be invoked once GatewaySender receives an ack from remote GatewayReceiver
    This callback will always be called from the thread which is dispatching events to remote distributed systems
    Parameters:
      `event` - the triggering `GatewayQueueEvent`