aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.ServerApplication/ApplicationHost.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-09-28 12:50:33 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-09-28 12:50:33 -0400
commitc05cb1dcb1bb51cadc6e413395f2adb63cbab6ad (patch)
tree1b376930053e5eaed96e24d4a8ea49c16ed419f2 /MediaBrowser.ServerApplication/ApplicationHost.cs
parent3be25f8bfbe6286d47ab5cf400fac7673e284d61 (diff)
fix mac ffmpeg build
Diffstat (limited to 'MediaBrowser.ServerApplication/ApplicationHost.cs')
-rw-r--r--MediaBrowser.ServerApplication/ApplicationHost.cs21
1 files changed, 16 insertions, 5 deletions
diff --git a/MediaBrowser.ServerApplication/ApplicationHost.cs b/MediaBrowser.ServerApplication/ApplicationHost.cs
index 471bc1a22..561940800 100644
--- a/MediaBrowser.ServerApplication/ApplicationHost.cs
+++ b/MediaBrowser.ServerApplication/ApplicationHost.cs
@@ -219,7 +219,8 @@ namespace MediaBrowser.ServerApplication
private ISyncRepository SyncRepository { get; set; }
private ITVSeriesManager TVSeriesManager { get; set; }
- private StartupOptions _startupOptions;
+ private readonly StartupOptions _startupOptions;
+ private readonly string _remotePackageName;
/// <summary>
/// Initializes a new instance of the <see cref="ApplicationHost" /> class.
@@ -229,14 +230,16 @@ namespace MediaBrowser.ServerApplication
/// <param name="supportsRunningAsService">if set to <c>true</c> [supports running as service].</param>
/// <param name="isRunningAsService">if set to <c>true</c> [is running as service].</param>
/// <param name="options">The options.</param>
+ /// <param name="remotePackageName">Name of the remote package.</param>
public ApplicationHost(ServerApplicationPaths applicationPaths,
ILogManager logManager,
bool supportsRunningAsService,
bool isRunningAsService,
- StartupOptions options)
+ StartupOptions options, string remotePackageName)
: base(applicationPaths, logManager)
{
_startupOptions = options;
+ _remotePackageName = remotePackageName;
_isRunningAsService = isRunningAsService;
SupportsRunningAsService = supportsRunningAsService;
}
@@ -1091,9 +1094,17 @@ namespace MediaBrowser.ServerApplication
/// <returns>Task{CheckForUpdateResult}.</returns>
public override async Task<CheckForUpdateResult> CheckForApplicationUpdate(CancellationToken cancellationToken, IProgress<double> progress)
{
- var result = await NativeApp.CheckForApplicationUpdate(ApplicationVersion,
- ConfigurationManager.CommonConfiguration.SystemUpdateLevel, InstallationManager,
- cancellationToken, progress).ConfigureAwait(false);
+ var availablePackages = await InstallationManager.GetAvailablePackagesWithoutRegistrationInfo(cancellationToken).ConfigureAwait(false);
+
+ var version = InstallationManager.GetLatestCompatibleVersion(availablePackages, _remotePackageName, null, ApplicationVersion, ConfigurationManager.CommonConfiguration.SystemUpdateLevel);
+
+ var versionObject = version == null || string.IsNullOrWhiteSpace(version.versionStr) ? null : new Version(version.versionStr);
+
+ var isUpdateAvailable = versionObject != null && versionObject > ApplicationVersion;
+
+ var result = versionObject != null ?
+ new CheckForUpdateResult { AvailableVersion = versionObject.ToString(), IsUpdateAvailable = isUpdateAvailable, Package = version } :
+ new CheckForUpdateResult { AvailableVersion = ApplicationVersion.ToString(), IsUpdateAvailable = false };
HasUpdateAvailable = result.IsUpdateAvailable;