19 #include <boost/shared_ptr.hpp> 
   20 #include <boost/noncopyable.hpp> 
  153     virtual int launch(
int argc, 
char* argv[], 
const bool test_mode);
 
  443         return (check_only_);
 
  459         return (io_service_);
 
  467         return (controller_);
 
  476     static void setController(
const DControllerBasePtr& controller);
 
  528         static_cast<void>(input); 
 
  592     void usage(
const std::string& text);
 
  616     std::string app_name_;
 
  621     std::string bin_name_;
 
  643     static DControllerBasePtr controller_;
 
virtual isc::data::ConstElementPtr parseFile(const std::string &file_name)
Parse a given file into Elements. 
 
DControllerBaseError(const char *file, size_t line, const char *what)
 
boost::shared_ptr< DControllerBase > DControllerBasePtr
 
virtual isc::data::ConstElementPtr parseText(const std::string &input)
Parse text into Elements. 
 
std::string getVersion(bool extended)
returns Kea version on stdout and exit. 
 
isc::data::ConstElementPtr statusGetHandler(const std::string &command, isc::data::ConstElementPtr args)
handler for status-get command 
 
isc::data::ConstElementPtr configTestHandler(const std::string &command, isc::data::ConstElementPtr args)
handler for config-test command 
 
isc::data::ConstElementPtr serverTagGetHandler(const std::string &command, isc::data::ConstElementPtr args)
handler for server-tag-get command 
 
virtual isc::data::ConstElementPtr configFromFile()
Reconfigures the process from a configuration file. 
 
void usage(const std::string &text)
Prints the program usage text to std error. 
 
asiolink::IOServicePtr & getIOService()
Getter for fetching the controller's IOService. 
 
isc::data::ConstElementPtr configReloadHandler(const std::string &command, isc::data::ConstElementPtr args)
handler for config-reload command 
 
Exception thrown when the application process fails. 
 
virtual void processSignal(int signum)
Application-level signal processing method. 
 
void parseArgs(int argc, char *argv[])
Processes the command line arguments. 
 
virtual ~DControllerBase()
Destructor. 
 
DProcessBasePtr getProcess()
Fetches the current process. 
 
boost::shared_ptr< IOService > IOServicePtr
Defines a smart pointer to an IOService instance. 
 
void runProcess()
Invokes the application process's event loop,(DBaseProcess::run). 
 
virtual bool customOption(int option, char *optarg)
Virtual method that provides derivations the opportunity to support additional command line options...
 
isc::data::ConstElementPtr shutdownHandler(const std::string &command, isc::data::ConstElementPtr args)
handler for 'shutdown' command 
 
friend class DControllerTest
 
boost::shared_ptr< DProcessBase > DProcessBasePtr
Defines a shared pointer to DProcessBase. 
 
Exception used to convey version info upwards. 
 
virtual std::string getVersionAddendum()
Fetches text containing additional version specifics. 
 
isc::data::ConstElementPtr shutdownProcess(isc::data::ConstElementPtr args)
Initiates shutdown procedure. 
 
virtual const std::string getCustomOpts() const 
Virtual method which returns a string containing the option letters for any custom command line optio...
 
Exception thrown when the controller encounters an operational error. 
 
virtual isc::data::ConstElementPtr checkConfig(isc::data::ConstElementPtr new_config)
Instance method invoked by the configuration event handler and which processes the actual configurati...
 
void setVerbose(bool value)
Method for enabling or disabling verbose logging. 
 
static DControllerBasePtr & getController()
Static getter which returns the singleton instance. 
 
bool isCheckOnly() const 
Supplies whether or not check only mode is enabled. 
 
std::string handleOtherObjects(isc::data::ConstElementPtr args)
Deals with other (i.e. 
 
boost::shared_ptr< const Element > ConstElementPtr
 
isc::data::ConstElementPtr configWriteHandler(const std::string &command, isc::data::ConstElementPtr args)
handler for config-write command 
 
void checkConfigOnly()
Check the configuration. 
 
virtual const std::string getUsageText() const 
Virtual method which can be used to contribute derivation specific usage text. 
 
InvalidUsage(const char *file, size_t line, const char *what)
 
virtual const char * what() const 
Returns a C-style character string of the cause of the exception. 
 
boost::shared_ptr< IOSignalSet > IOSignalSetPtr
Defines a pointer to an IOSignalSet. 
 
virtual isc::data::ConstElementPtr updateConfig(isc::data::ConstElementPtr new_config)
Instance method invoked by the configuration event handler and which processes the actual configurati...
 
ProcessRunError(const char *file, size_t line, const char *what)
 
virtual int launch(int argc, char *argv[], const bool test_mode)
Acts as the primary entry point into the controller execution and provides the outermost application ...
 
Exception thrown when the command line is invalid. 
 
This is a base class for exceptions thrown from the DNS library module. 
 
static void setController(const DControllerBasePtr &controller)
Static setter which sets the singleton instance. 
 
Defines the logger used by the top-level component of kea-dhcp-ddns. 
 
LaunchError(const char *file, size_t line, const char *what)
 
bool isVerbose() const 
Supplies whether or not verbose logging is enabled. 
 
isc::data::ConstElementPtr configGetHandler(const std::string &command, isc::data::ConstElementPtr args)
handler for config-get command 
 
Logging initialization functions. 
 
void initProcess()
Instantiates the application process and then initializes it. 
 
isc::data::ConstElementPtr configSetHandler(const std::string &command, isc::data::ConstElementPtr args)
handler for config-set command 
 
Exception thrown when the controller launch fails. 
 
ProcessInitError(const char *file, size_t line, const char *what)
 
void setCheckOnly(bool value)
Method for enabling or disabling check only mode. 
 
std::string getAppName() const 
Fetches the name of the application under control. 
 
Base class for all services. 
 
std::string getBinName() const 
Fetches the name of the application executable. 
 
DControllerBase(const char *app_name, const char *bin_name)
Constructor. 
 
VersionMessage(const char *file, size_t line, const char *what)
 
Application Process Interface. 
 
isc::data::ConstElementPtr buildReportHandler(const std::string &command, isc::data::ConstElementPtr args)
handler for 'build-report' command 
 
Exception thrown when the application process encounters an operation in its event loop (i...
 
void initSignalHandling()
Initializes signal handling. 
 
virtual DProcessBase * createProcess()=0
Abstract method that is responsible for instantiating the application process object. 
 
isc::data::ConstElementPtr versionGetHandler(const std::string &command, isc::data::ConstElementPtr args)
handler for version-get command