19 #include <boost/shared_ptr.hpp> 20 #include <boost/noncopyable.hpp> 118 std::string getVersion(
bool extended);
153 virtual int launch(
int argc,
char* argv[],
const bool test_mode);
242 versionGetHandler(
const std::string& command,
254 buildReportHandler(
const std::string& command,
266 configGetHandler(
const std::string& command,
283 configWriteHandler(
const std::string& command,
295 configTestHandler(
const std::string& command,
307 configReloadHandler(
const std::string& command,
319 configSetHandler(
const std::string& command,
330 shutdownHandler(
const std::string& command,
342 serverTagGetHandler(
const std::string& command,
355 statusGetHandler(
const std::string& command,
370 virtual bool customOption(
int option,
char *optarg);
406 void checkConfigOnly();
423 virtual void processSignal(
int signum);
443 return (check_only_);
459 return (io_service_);
467 return (controller_);
476 static void setController(
const DControllerBasePtr& controller);
492 void parseArgs(
int argc,
char* argv[]);
528 static_cast<void>(input);
579 void initSignalHandling();
592 void usage(
const std::string& text);
616 std::string app_name_;
621 std::string bin_name_;
643 static DControllerBasePtr controller_;
647 friend class DControllerTest;
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.
bool isVerbose() const
Supplies whether or not verbose logging is enabled.
asiolink::IOServicePtr & getIOService()
Getter for fetching the controller's IOService.
Exception thrown when the application process fails.
DProcessBasePtr getProcess()
Fetches the current process.
boost::shared_ptr< IOService > IOServicePtr
Defines a smart pointer to an IOService instance.
virtual const char * what() const
Returns a C-style character string of the cause of the exception.
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.
Exception thrown when the controller encounters an operational error.
void setVerbose(bool value)
Method for enabling or disabling verbose logging.
static DControllerBasePtr & getController()
Static getter which returns the singleton instance.
boost::shared_ptr< const Element > ConstElementPtr
InvalidUsage(const char *file, size_t line, const char *what)
boost::shared_ptr< IOSignalSet > IOSignalSetPtr
Defines a pointer to an IOSignalSet.
ProcessRunError(const char *file, size_t line, const char *what)
Exception thrown when the command line is invalid.
This is a base class for exceptions thrown from the DNS library module.
Defines the logger used by the top-level component of kea-lfc.
LaunchError(const char *file, size_t line, const char *what)
Logging initialization functions.
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.
Base class for all services.
virtual const std::string getUsageText() const
Virtual method which can be used to contribute derivation specific usage text.
VersionMessage(const char *file, size_t line, const char *what)
Application Process Interface.
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 application process encounters an operation in its event loop (i...
bool isCheckOnly() const
Supplies whether or not check only mode is enabled.
std::string getAppName() const
Fetches the name of the application under control.
std::string getBinName() const
Fetches the name of the application executable.