This is a base class for exceptions thrown from the DNS library module.
virtual const char * what() const
Returns a C-style character string of the cause of the exception.
Embodies the "life-cycle" required to carry out a DDNS update.
static const int NCT_DERIVED_STATE_MIN
Value at which custom states in a derived class should begin.
Thrown if the SimpleRemoveTransaction encounters a general error.
SimpleRemoveTransactionError(const char *file, size_t line, const char *what)
Embodies the "life-cycle" required to carry out a DDNS Remove update.
void removingRevPtrsHandler()
State handler for REMOVING_REV_PTRS_ST.
virtual void defineEvents()
Adds events defined by SimpleRemoveTransaction to the event set.
void processRemoveOkHandler()
State handler for PROCESS_TRANS_OK_ST.
virtual void verifyEvents()
Validates the contents of the set of events.
void selectingFwdServerHandler()
State handler for SELECTING_FWD_SERVER_ST.
void buildRemoveRevPtrsRequest()
Builds a DNS request to remove a reverse DNS entry for a FQDN.
virtual void verifyStates()
Validates the contents of the set of states.
void processRemoveFailedHandler()
State handler for PROCESS_TRANS_FAILED_ST.
virtual ~SimpleRemoveTransaction()
Destructor.
SimpleRemoveTransaction(asiolink::IOServicePtr &io_service, dhcp_ddns::NameChangeRequestPtr &ncr, DdnsDomainPtr &forward_domain, DdnsDomainPtr &reverse_domain, D2CfgMgrPtr &cfg_mgr)
Event sent when replace attempt to fails with address not in use.
void buildRemoveFwdRRsRequest()
Builds a DNS request to remove all forward DNS RRs for a FQDN.
static const int REMOVING_REV_PTRS_ST
State that attempts to remove reverse PTR records.
void readyHandler()
State handler for READY_ST.
virtual void defineStates()
Adds states defined by SimpleRemoveTransaction to the state set.
static const int REMOVING_FWD_RRS_ST
State that attempts to remove FQDN/IP and DHCID RRs for an FQDN.
void selectingRevServerHandler()
State handler for SELECTING_REV_SERVER_ST.
void removingFwdRRsHandler()
State handler for REMOVING_FWD_RRS_ST.
boost::shared_ptr< IOService > IOServicePtr
Defines a smart pointer to an IOService instance.
boost::shared_ptr< DdnsDomain > DdnsDomainPtr
Defines a pointer for DdnsDomain instances.
boost::shared_ptr< D2CfgMgr > D2CfgMgrPtr
Defines a shared pointer to D2CfgMgr.
boost::shared_ptr< SimpleRemoveTransaction > SimpleRemoveTransactionPtr
Defines a pointer to a SimpleRemoveTransaction.
boost::shared_ptr< NameChangeRequest > NameChangeRequestPtr
Defines a pointer to a NameChangeRequest.
Defines the logger used by the top-level component of kea-lfc.
This file defines the class NameChangeTransaction.