Kea 3.1.1
isc::lease_query::BulkLeaseQuery Class Referenceabstract

Base class for providing control flow for processing a bulk query. More...

#include <bulk_lease_query.h>

+ Inheritance diagram for isc::lease_query::BulkLeaseQuery:

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.
 

Detailed Description

Base class for providing control flow for processing a bulk query.

Definition at line 38 of file bulk_lease_query.h.

Constructor & Destructor Documentation

◆ BulkLeaseQuery()

isc::lease_query::BulkLeaseQuery::BulkLeaseQuery ( BlqQueryPtr query,
const BlqPostCb & post,
const BlqPushToSendCb & push_to_send,
const BlqQueryCompleteCb & query_complete )
inline

Constructor.

Parameters
queryThe query.
postThe post callback.
push_to_sendThe pushToSend callback.
query_completeThe queryComplete callback.
Exceptions
BadValueif 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().

◆ ~BulkLeaseQuery()

virtual isc::lease_query::BulkLeaseQuery::~BulkLeaseQuery ( )
inlinevirtual

Destructor.

Definition at line 60 of file bulk_lease_query.h.

Member Function Documentation

◆ getQuery()

BlqQueryPtr isc::lease_query::BulkLeaseQuery::getQuery ( )
inline

Get the query.

Returns
The query.

Definition at line 102 of file bulk_lease_query.h.

References query_.

◆ getQueryType()

uint8_t isc::lease_query::BulkLeaseQuery::getQueryType ( ) const
inline

Get the query type.

Returns
The query type.

Definition at line 109 of file bulk_lease_query.h.

References query_type_.

◆ getXid()

Xid isc::lease_query::BulkLeaseQuery::getXid ( ) const
inline

Get the transaction id of the query.

Returns
The transaction id of the query.

Definition at line 116 of file bulk_lease_query.h.

References query_.

◆ init()

virtual void isc::lease_query::BulkLeaseQuery::init ( )
pure virtual

Initialization.

Check the query and fill processing context fields.

Exceptions
BadValueif the query is invalid for a number reasons.

Implemented in isc::lease_query::BulkLeaseQuery4, and isc::lease_query::BulkLeaseQuery6.

◆ isProcessed()

bool isc::lease_query::BulkLeaseQuery::isProcessed ( ) const
inline

Processing finished predicate.

Returns
True when query processing finished.

Definition at line 95 of file bulk_lease_query.h.

References done_.

◆ isProcessing()

bool isc::lease_query::BulkLeaseQuery::isProcessing ( ) const
inline

Processing in progress predicate.

Returns
True when query processing is in progress, false when not yet started.

Definition at line 88 of file bulk_lease_query.h.

References started_.

◆ processStart()

static void isc::lease_query::BulkLeaseQuery::processStart ( BulkLeaseQueryPtr ptr)
inlinestatic

Class/static start processing.

Parameters
ptrPointer 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().

◆ setDone()

◆ start()

virtual void isc::lease_query::BulkLeaseQuery::start ( )
pure virtual

Member Data Documentation

◆ done_

bool isc::lease_query::BulkLeaseQuery::done_
protected

The processing finished.

Definition at line 146 of file bulk_lease_query.h.

Referenced by BulkLeaseQuery(), isProcessed(), and setDone().

◆ post_

◆ push_to_send_

BlqPushToSendCb isc::lease_query::BulkLeaseQuery::push_to_send_
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().

◆ query_

BlqQueryPtr isc::lease_query::BulkLeaseQuery::query_
protected

◆ query_complete_

BlqQueryCompleteCb isc::lease_query::BulkLeaseQuery::query_complete_
protected

The queryComplete callback.

Definition at line 137 of file bulk_lease_query.h.

Referenced by BulkLeaseQuery(), and setDone().

◆ query_type_

uint8_t isc::lease_query::BulkLeaseQuery::query_type_
protected

◆ started_

bool isc::lease_query::BulkLeaseQuery::started_
protected

The documentation for this class was generated from the following file: