GridGain C++
continuous_query_client.h
Go to the documentation of this file.
1 /*
2  * Copyright 2022 GridGain Systems, Inc. and Contributors.
3  *
4  * Licensed under the GridGain Community Edition License (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * https://www.gridgain.com/products/software/community-edition/gridgain-community-edition-license
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
22 #ifndef _IGNITE_THIN_CACHE_QUERY_CONTINUOUS_CONTINUOUS_QUERY_CLIENT
23 #define _IGNITE_THIN_CACHE_QUERY_CONTINUOUS_CONTINUOUS_QUERY_CLIENT
24 
25 #include <ignite/reference.h>
26 
29 
30 namespace ignite
31 {
32  namespace thin
33  {
34  namespace cache
35  {
36  namespace query
37  {
38  namespace continuous
39  {
52  template<typename K, typename V>
54  {
55  public:
59  enum { DEFAULT_BUFFER_SIZE = 1 };
60 
64  enum { DEFAULT_TIME_INTERVAL = 0 };
65 
70  {
71  // No-op.
72  }
73 
81  bufferSize(DEFAULT_BUFFER_SIZE),
82  timeInterval(DEFAULT_TIME_INTERVAL),
83  includeExpired(false),
84  listener(lsnr),
85  filter()
86  {
87  // No-op.
88  }
89 
99  void SetBufferSize(int32_t val)
100  {
101  bufferSize = val;
102  }
103 
113  int32_t GetBufferSize() const
114  {
115  return bufferSize;
116  }
117 
130  void SetTimeInterval(int64_t val)
131  {
132  timeInterval = val;
133  }
134 
147  int64_t GetTimeInterval() const
148  {
149  return timeInterval;
150  }
151 
162  void SetIncludeExpired(bool val)
163  {
164  includeExpired = val;
165  }
166 
177  bool GetIncludeExpired() const
178  {
179  return includeExpired;
180  }
181 
190  {
191  listener = lsnr;
192  }
193 
200  {
201  return *listener.Get();
202  }
203 
210  {
211  return *listener.Get();
212  }
213 
221  {
222  filter = fltr;
223  }
224 
231  {
232  return filter;
233  }
234 
241  {
242  return filter;
243  }
244 
245  private:
247  int32_t bufferSize;
248 
250  int64_t timeInterval;
251 
253  bool includeExpired;
254 
257 
260  };
261  }
262  }
263  }
264  }
265 }
266 
267 #endif //_IGNITE_THIN_CACHE_QUERY_CONTINUOUS_CONTINUOUS_QUERY_CLIENT
ignite
Ignite API.
Definition: cache.h:47
ignite::thin::cache::query::continuous::ContinuousQueryClient::GetTimeInterval
int64_t GetTimeInterval() const
Get time interval.
Definition: continuous_query_client.h:147
cache_entry_event_listener.h
ignite::thin::cache::query::continuous::ContinuousQueryClient::SetIncludeExpired
void SetIncludeExpired(bool val)
Sets a value indicating whether to notify about Expired events.
Definition: continuous_query_client.h:162
ignite::thin::cache::query::continuous::ContinuousQueryClient::GetBufferSize
int32_t GetBufferSize() const
Get buffer size.
Definition: continuous_query_client.h:113
ignite::thin::cache::event::CacheEntryEventListener
Cache entry event listener.
Definition: thin-client/include/ignite/thin/cache/event/cache_entry_event_listener.h:41
ignite::thin::cache::query::continuous::ContinuousQueryClient
Continuous query client.
Definition: continuous_query_client.h:53
ignite::thin::cache::query::continuous::ContinuousQueryClient::SetTimeInterval
void SetTimeInterval(int64_t val)
Set time interval.
Definition: continuous_query_client.h:130
ignite::thin::cache::query::continuous::ContinuousQueryClient::GetJavaFilter
const event::JavaCacheEntryEventFilter & GetJavaFilter() const
Get remote Java filter reference.
Definition: continuous_query_client.h:240
java_cache_entry_event_filter.h
ignite::thin::cache::query::continuous::ContinuousQueryClient::ContinuousQueryClient
ContinuousQueryClient(Reference< event::CacheEntryEventListener< K, V > > lsnr)
Constructor.
Definition: continuous_query_client.h:80
ignite::thin::cache::query::continuous::ContinuousQueryClient::SetJavaFilter
void SetJavaFilter(const event::JavaCacheEntryEventFilter &fltr)
Set Java event filter to be used on server to determine what events should be transferred to local ev...
Definition: continuous_query_client.h:220
ignite::thin::cache::query::continuous::ContinuousQueryClient::~ContinuousQueryClient
~ContinuousQueryClient()
Destructor.
Definition: continuous_query_client.h:69
ignite::thin::cache::query::continuous::ContinuousQueryClient::GetListener
event::CacheEntryEventListener< K, V > & GetListener()
Get cache entry event listener.
Definition: continuous_query_client.h:209
reference.h
ignite::thin::cache::query::continuous::ContinuousQueryClient::SetBufferSize
void SetBufferSize(int32_t val)
Set buffer size.
Definition: continuous_query_client.h:99
ignite::thin::cache::query::continuous::ContinuousQueryClient::GetListener
const event::CacheEntryEventListener< K, V > & GetListener() const
Get cache entry event listener.
Definition: continuous_query_client.h:199
ignite::thin::cache::query::continuous::ContinuousQueryClient::SetListener
void SetListener(Reference< event::CacheEntryEventListener< K, V > > lsnr)
Set cache entry event listener.
Definition: continuous_query_client.h:189
ignite::thin::cache::query::continuous::ContinuousQueryClient::GetIncludeExpired
bool GetIncludeExpired() const
Gets a value indicating whether to notify about Expired events.
Definition: continuous_query_client.h:177
ignite::thin::cache::query::continuous::ContinuousQueryClient::GetJavaFilter
event::JavaCacheEntryEventFilter & GetJavaFilter()
Get remote Java filter reference.
Definition: continuous_query_client.h:230
ignite::Reference
Reference class.
Definition: reference.h:34
ignite::thin::cache::event::JavaCacheEntryEventFilter
Java cache entry event filter.
Definition: thin-client/include/ignite/thin/cache/event/java_cache_entry_event_filter.h:54