aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/ISystemManager.cs
blob: 08344a1e516fcfe7e6a4a8ec4a889191665a5c4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
using MediaBrowser.Model.System;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;

namespace MediaBrowser.Controller;

/// <summary>
/// A service for managing the application instance.
/// </summary>
public interface ISystemManager
{
    /// <summary>
    /// Gets the system info.
    /// </summary>
    /// <param name="request">The HTTP request.</param>
    /// <returns>The <see cref="SystemInfo"/>.</returns>
    SystemInfo GetSystemInfo(HttpRequest request);

    /// <summary>
    /// Gets the public system info.
    /// </summary>
    /// <param name="request">The HTTP request.</param>
    /// <returns>The <see cref="PublicSystemInfo"/>.</returns>
    PublicSystemInfo GetPublicSystemInfo(HttpRequest request);

    /// <summary>
    /// Starts the application restart process.
    /// </summary>
    void Restart();

    /// <summary>
    /// Starts the application shutdown process.
    /// </summary>
    void Shutdown();

    /// <summary>
    /// Gets the systems storage resources.
    /// </summary>
    /// <returns>The <see cref="SystemStorageInfo"/>.</returns>
    SystemStorageInfo GetSystemStorageInfo();
}