org.apache.ignite.internal.processors.cache.query.continuous

## Interface CacheContinuousQueryListener<K,V>

    public interface CacheContinuousQueryListener<K,V>

Continuous query listener.

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `acknowledgeBackupOnTimeout(GridKernalContext ctx)`
`void` `cleanupBackupQueue(Map<Integer,Long> updateCntrs)` Cleans backup queue.
`void` `flushBackupQueue(GridKernalContext ctx, AffinityTopologyVersion topVer)` Flushes backup queue.
`boolean` `keepBinary()`
`boolean` `notifyExisting()`
`boolean` `oldValueRequired()`
`void` `onEntryUpdated(org.apache.ignite.internal.processors.cache.query.continuous.CacheContinuousQueryEvent<K,V> evt, boolean primary, boolean recordIgniteEvt, GridDhtAtomicAbstractUpdateFuture fut)` Entry update callback.
`void` `onExecution()` Query execution callback.
`void` `onPartitionEvicted(int part)`
`void` `onUnregister()` Listener unregistered callback.
`CounterSkipContext` `skipUpdateCounter(GridCacheContext cctx, CounterSkipContext skipCtx, int part, long cntr, AffinityTopologyVersion topVer, boolean primary)` For cache updates in shared cache group need notify others caches CQ listeners that generated counter should be skipped.
`void` `skipUpdateEvent(org.apache.ignite.internal.processors.cache.query.continuous.CacheContinuousQueryEvent<K,V> evt, AffinityTopologyVersion topVer, boolean primary)`

### Method Detail

#### onExecution

    void onExecution()

Query execution callback.

#### onEntryUpdated

    void onEntryUpdated(org.apache.ignite.internal.processors.cache.query.continuous.CacheContinuousQueryEvent<K,V> evt,
                        boolean primary,
                        boolean recordIgniteEvt,
                        @Nullable
                        GridDhtAtomicAbstractUpdateFuture fut)

Entry update callback.

Parameters:
  `evt` - Event
  `primary` - Primary flag.
  `recordIgniteEvt` - Whether to record event.
  `fut` - Dht atomic future.

#### onUnregister

    void onUnregister()

Listener unregistered callback.

#### cleanupBackupQueue

    void cleanupBackupQueue(Map<Integer,Long> updateCntrs)

Cleans backup queue.

Parameters:
  `updateCntrs` - Update indexes map.

#### flushBackupQueue

    void flushBackupQueue(GridKernalContext ctx,
                          AffinityTopologyVersion topVer)

Flushes backup queue.

Parameters:
  `ctx` - Context.
  `topVer` - Topology version.

#### acknowledgeBackupOnTimeout

    void acknowledgeBackupOnTimeout(GridKernalContext ctx)

Parameters:
  `ctx` - Context.

#### skipUpdateEvent

    void skipUpdateEvent(org.apache.ignite.internal.processors.cache.query.continuous.CacheContinuousQueryEvent<K,V> evt,
                         AffinityTopologyVersion topVer,
                         boolean primary)

Parameters:
  `evt` - Event
  `topVer` - Topology version.
  `primary` - Primary

#### skipUpdateCounter

    @Nullable
    CounterSkipContext skipUpdateCounter(GridCacheContext cctx,
                                                   @Nullable
                                                   CounterSkipContext skipCtx,
                                                   int part,
                                                   long cntr,
                                                   AffinityTopologyVersion topVer,
                                                   boolean primary)

For cache updates in shared cache group need notify others caches CQ listeners that generated counter should be skipped.

Parameters:
  `cctx` - Cache context.
  `skipCtx` - Context.
  `part` - Partition.
  `cntr` - Counter to skip.
  `topVer` - Topology version.
Returns:
  Context.

#### onPartitionEvicted

    void onPartitionEvicted(int part)

Parameters:
  `part` - Partition.

#### oldValueRequired

    boolean oldValueRequired()

Returns:
  Whether old value is required.

#### keepBinary

    boolean keepBinary()

Returns:
  Keep binary flag.

#### notifyExisting

    boolean notifyExisting()

Returns:
  Whether to notify on existing entries.

2018 Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.7.0
Release Date | : November 30 2018