diff --git a/MediaBrowser.Api/PackageService.cs b/MediaBrowser.Api/PackageService.cs
index 0e1a377099..de6831d133 100644
--- a/MediaBrowser.Api/PackageService.cs
+++ b/MediaBrowser.Api/PackageService.cs
@@ -1,6 +1,6 @@
using MediaBrowser.Common;
using MediaBrowser.Common.Extensions;
-using MediaBrowser.Controller.Updates;
+using MediaBrowser.Common.Updates;
using MediaBrowser.Model.Updates;
using ServiceStack.ServiceHost;
using System;
diff --git a/MediaBrowser.Api/PluginService.cs b/MediaBrowser.Api/PluginService.cs
index 33c09bbfea..6c0face6b3 100644
--- a/MediaBrowser.Api/PluginService.cs
+++ b/MediaBrowser.Api/PluginService.cs
@@ -1,7 +1,7 @@
using MediaBrowser.Common;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.Security;
-using MediaBrowser.Controller.Updates;
+using MediaBrowser.Common.Updates;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Plugins;
using MediaBrowser.Model.Serialization;
diff --git a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs
index a0c1a2f0fe..ef90a856b1 100644
--- a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs
+++ b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs
@@ -148,6 +148,12 @@ namespace MediaBrowser.Common.Implementations
/// The configuration manager.
protected IConfigurationManager ConfigurationManager { get; private set; }
+ ///
+ /// Gets or sets the installation manager.
+ ///
+ /// The installation manager.
+ protected IInstallationManager InstallationManager { get; set; }
+
///
/// Initializes a new instance of the class.
///
@@ -282,6 +288,9 @@ namespace MediaBrowser.Common.Implementations
PackageManager = new PackageManager(SecurityManager, NetworkManager, HttpClient, ApplicationPaths, JsonSerializer, Logger);
RegisterSingleInstance(PackageManager);
+
+ InstallationManager = new InstallationManager(HttpClient, PackageManager, JsonSerializer, Logger, this);
+ RegisterSingleInstance(InstallationManager);
});
}
diff --git a/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj b/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj
index e2a56e9120..2797c54797 100644
--- a/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj
+++ b/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj
@@ -85,6 +85,7 @@
+
diff --git a/MediaBrowser.Server.Implementations/Updates/InstallationManager.cs b/MediaBrowser.Common.Implementations/Updates/InstallationManager.cs
similarity index 99%
rename from MediaBrowser.Server.Implementations/Updates/InstallationManager.cs
rename to MediaBrowser.Common.Implementations/Updates/InstallationManager.cs
index 45988c9ec4..ba2cd7baa0 100644
--- a/MediaBrowser.Server.Implementations/Updates/InstallationManager.cs
+++ b/MediaBrowser.Common.Implementations/Updates/InstallationManager.cs
@@ -1,10 +1,8 @@
-using MediaBrowser.Common;
-using MediaBrowser.Common.Events;
+using MediaBrowser.Common.Events;
using MediaBrowser.Common.Net;
using MediaBrowser.Common.Plugins;
using MediaBrowser.Common.Progress;
using MediaBrowser.Common.Updates;
-using MediaBrowser.Controller.Updates;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Serialization;
using MediaBrowser.Model.Updates;
@@ -16,7 +14,7 @@ using System.Linq;
using System.Threading;
using System.Threading.Tasks;
-namespace MediaBrowser.Server.Implementations.Updates
+namespace MediaBrowser.Common.Implementations.Updates
{
///
/// Manages all install, uninstall and update operations (both plugins and system)
diff --git a/MediaBrowser.Common/MediaBrowser.Common.csproj b/MediaBrowser.Common/MediaBrowser.Common.csproj
index 9a81537bff..f4acca25da 100644
--- a/MediaBrowser.Common/MediaBrowser.Common.csproj
+++ b/MediaBrowser.Common/MediaBrowser.Common.csproj
@@ -106,6 +106,7 @@
+
diff --git a/MediaBrowser.Controller/Updates/IInstallationManager.cs b/MediaBrowser.Common/Updates/IInstallationManager.cs
similarity index 99%
rename from MediaBrowser.Controller/Updates/IInstallationManager.cs
rename to MediaBrowser.Common/Updates/IInstallationManager.cs
index c7f064279e..72b581325c 100644
--- a/MediaBrowser.Controller/Updates/IInstallationManager.cs
+++ b/MediaBrowser.Common/Updates/IInstallationManager.cs
@@ -7,7 +7,7 @@ using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
-namespace MediaBrowser.Controller.Updates
+namespace MediaBrowser.Common.Updates
{
public interface IInstallationManager : IDisposable
{
diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
index 77879ed756..eea344a632 100644
--- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj
+++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
@@ -160,7 +160,6 @@
-
diff --git a/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs b/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs
index 86a8520e09..5a72fb5bff 100644
--- a/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs
+++ b/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs
@@ -156,7 +156,7 @@ namespace MediaBrowser.Providers.Savers
builder.Append("" + SecurityElement.Escape(item.OfficialRating) + "");
}
- builder.Append("" + SecurityElement.Escape(item.DateCreated.ToString(UsCulture)) + "");
+ builder.Append("" + SecurityElement.Escape(item.DateCreated.ToString("G")) + "");
builder.Append("" + item.DontFetchMeta.ToString().ToLower() + "");
diff --git a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
index 041c9db6b8..b2e60a4018 100644
--- a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
+++ b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
@@ -184,7 +184,6 @@
-
@@ -286,6 +285,9 @@
PreserveNewest
+
+
+