2017-08-09 11:57:09 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <Poco/Logger.h>
|
|
|
|
#include <Poco/Util/LayeredConfiguration.h>
|
|
|
|
|
2017-08-09 14:33:07 +00:00
|
|
|
#include <Interpreters/Context.h>
|
|
|
|
|
|
|
|
|
2017-08-09 11:57:09 +00:00
|
|
|
namespace DB
|
|
|
|
{
|
|
|
|
|
|
|
|
class IServer
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
/// Returns the application's configuration.
|
|
|
|
virtual Poco::Util::LayeredConfiguration & config() const = 0;
|
|
|
|
|
|
|
|
/// Returns the application's logger.
|
|
|
|
virtual Poco::Logger & logger() const = 0;
|
|
|
|
|
|
|
|
/// Returns global application's context.
|
|
|
|
virtual Context & context() const = 0;
|
|
|
|
|
2017-08-09 14:33:07 +00:00
|
|
|
/// Returns true if shutdown signaled.
|
|
|
|
virtual bool isCancelled() const = 0;
|
|
|
|
|
2017-08-09 11:57:09 +00:00
|
|
|
virtual ~IServer() {}
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|