| Kea 3.0.2-git

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:
[legend]

## 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

  query | The query.
  post | The post callback.
  push_to_send | The pushToSend callback.
  query_complete | The queryComplete callback.

Exceptions

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

## ◆ ~BulkLeaseQuery()

virtual isc::lease_query::BulkLeaseQuery::~BulkLeaseQuery | ( |  | ) |
| inline virtual

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

  BadValue | if 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()

void isc::lease_query::BulkLeaseQuery::processStart | ( | BulkLeaseQueryPtr | ptr | ) |
| inline static

Class/static start processing.

Parameters

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

## ◆ setDone()

virtual void isc::lease_query::BulkLeaseQuery::setDone | ( |  | ) |
| inline protected virtual

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

## ◆ start()

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

Start processing.

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

## 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_

BlqPostCb isc::lease_query::BulkLeaseQuery::post_
| 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().

## ◆ 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

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

## ◆ 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

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

## ◆ started_

bool isc::lease_query::BulkLeaseQuery::started_
| 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().

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

- bulk_lease_query.h