2020-04-05 18:10:56 +02:00
|
|
|
#nullable disable
|
2020-02-04 01:49:27 +01:00
|
|
|
#pragma warning disable CS1591
|
|
|
|
|
2019-02-03 17:09:12 +01:00
|
|
|
using System;
|
2019-01-13 21:02:23 +01:00
|
|
|
using System.Runtime.InteropServices;
|
2019-01-13 20:26:15 +01:00
|
|
|
using MediaBrowser.Model.Updates;
|
2018-12-28 00:27:57 +01:00
|
|
|
|
|
|
|
namespace MediaBrowser.Model.System
|
|
|
|
{
|
2019-02-12 23:05:42 +01:00
|
|
|
/// <summary>
|
|
|
|
/// Enum describing the location of the FFmpeg tool.
|
|
|
|
/// </summary>
|
|
|
|
public enum FFmpegLocation
|
|
|
|
{
|
|
|
|
/// <summary>No path to FFmpeg found.</summary>
|
|
|
|
NotFound,
|
2020-09-28 22:04:31 +02:00
|
|
|
|
2019-02-12 23:05:42 +01:00
|
|
|
/// <summary>Path supplied via command line using switch --ffmpeg.</summary>
|
|
|
|
SetByArgument,
|
2020-09-28 22:04:31 +02:00
|
|
|
|
2019-02-12 23:05:42 +01:00
|
|
|
/// <summary>User has supplied path via Transcoding UI page.</summary>
|
|
|
|
Custom,
|
2020-09-28 22:04:31 +02:00
|
|
|
|
2019-02-12 23:05:42 +01:00
|
|
|
/// <summary>FFmpeg tool found on system $PATH.</summary>
|
|
|
|
System
|
2020-09-28 22:04:31 +02:00
|
|
|
}
|
2019-02-12 23:05:42 +01:00
|
|
|
|
2018-12-28 00:27:57 +01:00
|
|
|
/// <summary>
|
2020-06-16 00:37:52 +02:00
|
|
|
/// Class SystemInfo.
|
2018-12-28 00:27:57 +01:00
|
|
|
/// </summary>
|
|
|
|
public class SystemInfo : PublicSystemInfo
|
|
|
|
{
|
2021-02-20 23:13:04 +01:00
|
|
|
/// <summary>
|
|
|
|
/// Initializes a new instance of the <see cref="SystemInfo" /> class.
|
|
|
|
/// </summary>
|
|
|
|
public SystemInfo()
|
|
|
|
{
|
|
|
|
CompletedInstallations = Array.Empty<InstallationInfo>();
|
|
|
|
}
|
|
|
|
|
2018-12-28 00:27:57 +01:00
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets the display name of the operating system.
|
|
|
|
/// </summary>
|
|
|
|
/// <value>The display name of the operating system.</value>
|
|
|
|
public string OperatingSystemDisplayName { get; set; }
|
|
|
|
|
2019-01-08 01:57:01 +01:00
|
|
|
/// <summary>
|
2021-02-20 23:13:04 +01:00
|
|
|
/// Gets or sets the package name.
|
2019-01-08 01:57:01 +01:00
|
|
|
/// </summary>
|
|
|
|
/// <value>The value of the '-package' command line argument.</value>
|
2018-12-28 00:27:57 +01:00
|
|
|
public string PackageName { get; set; }
|
2019-01-08 00:27:46 +01:00
|
|
|
|
2018-12-28 00:27:57 +01:00
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets a value indicating whether this instance has pending restart.
|
|
|
|
/// </summary>
|
|
|
|
/// <value><c>true</c> if this instance has pending restart; otherwise, <c>false</c>.</value>
|
|
|
|
public bool HasPendingRestart { get; set; }
|
|
|
|
|
|
|
|
public bool IsShuttingDown { get; set; }
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets a value indicating whether [supports library monitor].
|
|
|
|
/// </summary>
|
|
|
|
/// <value><c>true</c> if [supports library monitor]; otherwise, <c>false</c>.</value>
|
|
|
|
public bool SupportsLibraryMonitor { get; set; }
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets the web socket port number.
|
|
|
|
/// </summary>
|
|
|
|
/// <value>The web socket port number.</value>
|
|
|
|
public int WebSocketPortNumber { get; set; }
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets the completed installations.
|
|
|
|
/// </summary>
|
|
|
|
/// <value>The completed installations.</value>
|
|
|
|
public InstallationInfo[] CompletedInstallations { get; set; }
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets a value indicating whether this instance can self restart.
|
|
|
|
/// </summary>
|
|
|
|
/// <value><c>true</c> if this instance can self restart; otherwise, <c>false</c>.</value>
|
|
|
|
public bool CanSelfRestart { get; set; }
|
|
|
|
|
|
|
|
public bool CanLaunchWebBrowser { get; set; }
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets the program data path.
|
|
|
|
/// </summary>
|
|
|
|
/// <value>The program data path.</value>
|
|
|
|
public string ProgramDataPath { get; set; }
|
|
|
|
|
2019-03-10 22:04:18 +01:00
|
|
|
/// <summary>
|
2019-03-12 14:18:45 +01:00
|
|
|
/// Gets or sets the web UI resources path.
|
2019-03-10 22:04:18 +01:00
|
|
|
/// </summary>
|
2019-03-12 14:18:45 +01:00
|
|
|
/// <value>The web UI resources path.</value>
|
2019-03-10 22:04:18 +01:00
|
|
|
public string WebPath { get; set; }
|
|
|
|
|
2018-12-28 00:27:57 +01:00
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets the items by name path.
|
|
|
|
/// </summary>
|
|
|
|
/// <value>The items by name path.</value>
|
|
|
|
public string ItemsByNamePath { get; set; }
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets the cache path.
|
|
|
|
/// </summary>
|
|
|
|
/// <value>The cache path.</value>
|
|
|
|
public string CachePath { get; set; }
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets the log path.
|
|
|
|
/// </summary>
|
|
|
|
/// <value>The log path.</value>
|
|
|
|
public string LogPath { get; set; }
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets the internal metadata path.
|
|
|
|
/// </summary>
|
|
|
|
/// <value>The internal metadata path.</value>
|
|
|
|
public string InternalMetadataPath { get; set; }
|
|
|
|
|
|
|
|
/// <summary>
|
2019-11-21 13:51:17 +01:00
|
|
|
/// Gets or sets the transcode path.
|
2018-12-28 00:27:57 +01:00
|
|
|
/// </summary>
|
2019-11-21 13:51:17 +01:00
|
|
|
/// <value>The transcode path.</value>
|
|
|
|
public string TranscodingTempPath { get; set; }
|
2018-12-28 00:27:57 +01:00
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets a value indicating whether this instance has update available.
|
|
|
|
/// </summary>
|
|
|
|
/// <value><c>true</c> if this instance has update available; otherwise, <c>false</c>.</value>
|
|
|
|
public bool HasUpdateAvailable { get; set; }
|
|
|
|
|
2019-02-12 23:05:42 +01:00
|
|
|
public FFmpegLocation EncoderLocation { get; set; }
|
2018-12-28 00:27:57 +01:00
|
|
|
|
|
|
|
public Architecture SystemArchitecture { get; set; }
|
|
|
|
}
|
|
|
|
}
|