23 #ifndef _IGNITE_CACHE_QUERY_CURSOR
24 #define _IGNITE_CACHE_QUERY_CURSOR
28 #include <ignite/common/concurrent.h>
32 #include "ignite/impl/cache/query/query_impl.h"
33 #include "ignite/impl/operations.h"
44 template<
typename K,
typename V>
61 QueryCursor(impl::cache::query::QueryCursorImpl* impl) : impl(impl)
90 impl::cache::query::QueryCursorImpl* impl0 = impl.Get();
93 return impl0->HasNext(&err);
97 "Instance is not usable (did you check for error?).");
127 impl::cache::query::QueryCursorImpl* impl0 = impl.Get();
130 impl::Out2Operation<K, V> outOp;
132 impl0->GetNext(outOp, &err);
136 K& key = outOp.Get1();
137 V& val = outOp.Get2();
147 "Instance is not usable (did you check for error?).");
175 impl::cache::query::QueryCursorImpl* impl0 = impl.Get();
178 impl::OutQueryGetAllOperation<K, V> outOp(&res);
180 impl0->GetAll(outOp, &err);
184 "Instance is not usable (did you check for error?).");
194 return impl.IsValid();
199 ignite::common::concurrent::SharedPointer<impl::cache::query::QueryCursorImpl> impl;
void GetAll(std::vector< CacheEntry< K, V >> &res, IgniteError &err)
Get all entries.
Definition: query_cursor.h:173
QueryCursor(impl::cache::query::QueryCursorImpl *impl)
Constructor.
Definition: query_cursor.h:61
bool HasNext(IgniteError &err)
Check whether next entry exists.
Definition: query_cursor.h:88
int32_t GetCode() const
Get error code.
Definition: ignite_error.cpp:79
CacheEntry< K, V > GetNext(IgniteError &err)
Get next entry.
Definition: query_cursor.h:125
void GetAll(std::vector< CacheEntry< K, V >> &res)
Get all entries.
Definition: query_cursor.h:158
QueryCursor()
Default constructor.
Definition: query_cursor.h:51
Cache entry.
Definition: cache_entry.h:36
bool IsValid()
Check if the instance is valid.
Definition: query_cursor.h:192
static void ThrowIfNeeded(IgniteError &err)
Throw an error if code is not IGNITE_SUCCESS.
Definition: ignite_error.cpp:27
static const int IGNITE_SUCCESS
Success.
Definition: ignite_error.h:82
CacheEntry< K, V > GetNext()
Get next entry.
Definition: query_cursor.h:108
Declares ignite::cache::CacheEntry class.
Ignite error information.
Definition: ignite_error.h:78
bool HasNext()
Check whether next entry exists.
Definition: query_cursor.h:71
Apache Ignite API.
Definition: binary_consts.h:28
Declares ignite::IgniteError class.
Query cursor.
Definition: query_cursor.h:45
static const int IGNITE_ERR_GENERIC
Generic Ignite error.
Definition: ignite_error.h:112