![]() |
Kea 3.1.1
|
Base class for providing control flow for processing a bulk query. More...
#include <bulk_lease_query.h>
Public Member Functions | |
BulkLeaseQuery (BlqQueryPtr query, const BlqPostCb &post, const BlqPushToSendCb &push_to_send, const BlqQueryCompleteCb &query_complete) | |
Constructor. | |
virtual | ~BulkLeaseQuery () |
Destructor. | |
BlqQueryPtr | getQuery () |
Get the query. | |
uint8_t | getQueryType () const |
Get the query type. | |
Xid | getXid () const |
Get the transaction id of the query. | |
virtual void | init ()=0 |
Initialization. | |
bool | isProcessed () const |
Processing finished predicate. | |
bool | isProcessing () const |
Processing in progress predicate. | |
virtual void | start ()=0 |
Start processing. | |
Static Public Member Functions | |
static void | processStart (BulkLeaseQueryPtr ptr) |
Class/static start processing. | |
Protected Member Functions | |
virtual void | setDone () |
Set the done flag. | |
Protected Attributes | |
bool | done_ |
The processing finished. | |
BlqPostCb | post_ |
The post callback. | |
BlqPushToSendCb | push_to_send_ |
The pushToSend callback. | |
BlqQueryPtr | query_ |
The query. | |
BlqQueryCompleteCb | query_complete_ |
The queryComplete callback. | |
uint8_t | query_type_ |
The query type. | |
bool | started_ |
The processing is in progress. | |
Base class for providing control flow for processing a bulk query.
Definition at line 38 of file bulk_lease_query.h.
|
inline |
Constructor.
query | The query. |
post | The post callback. |
push_to_send | The pushToSend callback. |
query_complete | The queryComplete callback. |
BadValue | if the query is invalid for a number reasons. |
Definition at line 48 of file bulk_lease_query.h.
References done_, isc_throw, post_, push_to_send_, query_, query_complete_, and started_.
Referenced by isc::lease_query::BulkLeaseQuery4::BulkLeaseQuery4(), and isc::lease_query::BulkLeaseQuery6::BulkLeaseQuery6().
|
inlinevirtual |
Destructor.
Definition at line 60 of file bulk_lease_query.h.
|
inline |
Get the query.
Definition at line 102 of file bulk_lease_query.h.
References query_.
|
inline |
Get the query type.
Definition at line 109 of file bulk_lease_query.h.
References query_type_.
|
inline |
Get the transaction id of the query.
Definition at line 116 of file bulk_lease_query.h.
References query_.
|
pure virtual |
Initialization.
Check the query and fill processing context fields.
BadValue | if the query is invalid for a number reasons. |
Implemented in isc::lease_query::BulkLeaseQuery4, and isc::lease_query::BulkLeaseQuery6.
|
inline |
Processing finished predicate.
Definition at line 95 of file bulk_lease_query.h.
References done_.
|
inline |
Processing in progress predicate.
Definition at line 88 of file bulk_lease_query.h.
References started_.
|
inlinestatic |
Class/static start processing.
ptr | Pointer to a BulkLeaseQuery object (must not be null). |
Definition at line 76 of file bulk_lease_query.h.
Referenced by isc::lease_query::LeaseQueryConnection::startQuery().
|
inlineprotectedvirtual |
Set the done flag.
Definition at line 122 of file bulk_lease_query.h.
References done_, query_, and query_complete_.
Referenced by isc::lease_query::BulkLeaseQuery6::bulkQueryByClientId(), isc::lease_query::BulkLeaseQuery6::bulkQueryByIpAddress(), isc::lease_query::BulkLeaseQuery6::bulkQueryByLinkAddressNext(), isc::lease_query::BulkLeaseQuery6::bulkQueryByRelayIdNext(), isc::lease_query::BulkLeaseQuery6::bulkQueryByRemoteIdNext(), isc::lease_query::BulkLeaseQuery4::sendDone(), and isc::lease_query::BulkLeaseQuery6::sendReply().
|
pure virtual |
Start processing.
Implemented in isc::lease_query::BulkLeaseQuery4, and isc::lease_query::BulkLeaseQuery6.
|
protected |
The processing finished.
Definition at line 146 of file bulk_lease_query.h.
Referenced by BulkLeaseQuery(), isProcessed(), and setDone().
|
protected |
The post callback.
Definition at line 131 of file bulk_lease_query.h.
Referenced by BulkLeaseQuery(), isc::lease_query::BulkLeaseQuery6::bulkQueryByLinkAddress(), isc::lease_query::BulkLeaseQuery6::bulkQueryByLinkAddressNext(), isc::lease_query::BulkLeaseQuery4::bulkQueryByRelayId(), isc::lease_query::BulkLeaseQuery6::bulkQueryByRelayId(), isc::lease_query::BulkLeaseQuery6::bulkQueryByRelayIdNext(), isc::lease_query::BulkLeaseQuery4::bulkQueryByRemoteId(), isc::lease_query::BulkLeaseQuery6::bulkQueryByRemoteId(), and isc::lease_query::BulkLeaseQuery6::bulkQueryByRemoteIdNext().
|
protected |
The pushToSend callback.
Definition at line 134 of file bulk_lease_query.h.
Referenced by BulkLeaseQuery(), isc::lease_query::BulkLeaseQuery4::send(), and isc::lease_query::BulkLeaseQuery6::send().
|
protected |
The query.
Definition at line 128 of file bulk_lease_query.h.
Referenced by BulkLeaseQuery(), getQuery(), getXid(), isc::lease_query::BulkLeaseQuery4::init(), isc::lease_query::BulkLeaseQuery6::init(), and setDone().
|
protected |
The queryComplete callback.
Definition at line 137 of file bulk_lease_query.h.
Referenced by BulkLeaseQuery(), and setDone().
|
protected |
The query type.
Definition at line 140 of file bulk_lease_query.h.
Referenced by getQueryType(), isc::lease_query::BulkLeaseQuery6::init(), and isc::lease_query::BulkLeaseQuery6::start().
|
protected |
The processing is in progress.
Definition at line 143 of file bulk_lease_query.h.
Referenced by BulkLeaseQuery(), isProcessing(), isc::lease_query::BulkLeaseQuery4::start(), and isc::lease_query::BulkLeaseQuery6::start().