Apache Ignite.NET
Apache.Ignite.Core.Cache.Query.Continuous.ContinuousQuery< TK, TV > Class Template Reference

API for configuring continuous cache queries. More...

Public Member Functions

 ContinuousQuery (ICacheEntryEventListener< TK, TV > lsnr)
 Constructor. More...
 
 ContinuousQuery (ICacheEntryEventListener< TK, TV > lsnr, bool loc)
 Constructor. More...
 
 ContinuousQuery (ICacheEntryEventListener< TK, TV > lsnr, ICacheEntryEventFilter< TK, TV > filter)
 Constructor. More...
 
 ContinuousQuery (ICacheEntryEventListener< TK, TV > lsnr, ICacheEntryEventFilter< TK, TV > filter, bool loc)
 Constructor. More...
 

Public Attributes

const int DfltBufSize = 1
 Default buffer size. More...
 
const bool DfltAutoUnsubscribe = true
 Default auto-unsubscribe flag value. More...
 

Static Public Attributes

static readonly TimeSpan DfltTimeInterval = new TimeSpan(0)
 Default time interval. More...
 

Properties

ICacheEntryEventListener< TK, TV > Listener [get, set]
 Cache entry event listener. Invoked on the node where continuous query execution has been started. More...
 
ICacheEntryEventFilter< TK, TV > Filter [get, set]
 Optional cache entry filter. Invoked on a node where cache event occurred. If filter returns false, then cache entry event will not be sent to a node where continuous query has been started. More...
 
int BufferSize [get, set]
 Buffer size. When a cache update happens, entry is first put into a buffer. Entries from buffer will be sent to the master node only if the buffer is full or time provided via TimeInterval is exceeded. More...
 
TimeSpan TimeInterval [get, set]
 Time interval. When a cache update happens, entry is first put into a buffer. Entries from buffer will be sent to the master node only if the buffer is full (its size can be provided via BufferSize property) or time provided via this method is exceeded. More...
 
bool AutoUnsubscribe [get, set]
 Automatic unsubscribe flag. This flag indicates that query filters on remote nodes should be automatically unregistered if master node (node that initiated the query) leaves topology. If this flag is false, filters will be unregistered only when the query is cancelled from master node, and won't ever be unregistered if master node leaves grid. More...
 
bool Local [get, set]
 Local flag. When set query will be executed only on local node, so only local entries will be returned as query result. More...
 

Detailed Description

Continuous queries allow to register a remote and a listener for cache update events. If an update event passes the filter, it will be sent to the node that executed the query and listener will be notified on that node.

Continuous query can either be executed on the whole topology or only on local node.

In case query is distributed and a new node joins, it will get the filter for the query during discovery process before it actually joins topology, so no updates will be missed.

To execute the query use method ICache<K,V>.QueryContinuous(ContinuousQuery<K,V>).

Constructor & Destructor Documentation

Parameters
lsnrListener.
locWhether query should be executed locally.
Parameters
lsnrListener.
filterFilter.
Parameters
lsnrListener.
filterFilter.
locWhether query should be executed locally.

Member Data Documentation

const bool Apache.Ignite.Core.Cache.Query.Continuous.ContinuousQuery< TK, TV >.DfltAutoUnsubscribe = true
const int Apache.Ignite.Core.Cache.Query.Continuous.ContinuousQuery< TK, TV >.DfltBufSize = 1
readonly TimeSpan Apache.Ignite.Core.Cache.Query.Continuous.ContinuousQuery< TK, TV >.DfltTimeInterval = new TimeSpan(0)
static

Property Documentation

bool Apache.Ignite.Core.Cache.Query.Continuous.ContinuousQuery< TK, TV >.AutoUnsubscribe
getset

Defaults to true.

Defaults to DfltBufSize

Must be either binary or serializable in case query is not local.

Defaults to false.

TimeSpan Apache.Ignite.Core.Cache.Query.Continuous.ContinuousQuery< TK, TV >.TimeInterval
getset

Defaults to 0 which means that time check is disabled and entries will be sent only when buffer is full.