namespace Kyoo.Abstractions.Controllers
{
///
/// An interface that allow one to interact with the host and shutdown or restart the app.
///
public interface IApplication
{
///
/// Shutdown the process and stop gracefully.
///
void Shutdown();
///
/// Restart Kyoo from scratch, reload plugins, configurations and restart the web server.
///
void Restart();
///
/// Get the data directory.
///
/// Retrieve the data directory where runtime data should be stored.
string GetDataDirectory();
///
/// Retrieve the path of the json configuration file
/// (relative to the data directory, see ).
///
/// The configuration file name.
string GetConfigFile();
}
}