aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Common/Plugins/BasePlugin.cs
diff options
context:
space:
mode:
authorLukePulverenti <luke.pulverenti@gmail.com>2013-02-24 16:53:54 -0500
committerLukePulverenti <luke.pulverenti@gmail.com>2013-02-24 16:53:54 -0500
commit8ce3e74e8112a94773df22827849bf274fc88198 (patch)
treea4ce1edf34466be697e2e432609f6be80b6c6df6 /MediaBrowser.Common/Plugins/BasePlugin.cs
parent6c86721f6de2acbe68e9419064ff21111ff3a223 (diff)
More DI
Diffstat (limited to 'MediaBrowser.Common/Plugins/BasePlugin.cs')
-rw-r--r--MediaBrowser.Common/Plugins/BasePlugin.cs22
1 files changed, 17 insertions, 5 deletions
diff --git a/MediaBrowser.Common/Plugins/BasePlugin.cs b/MediaBrowser.Common/Plugins/BasePlugin.cs
index d089aa1b3..dad3867fc 100644
--- a/MediaBrowser.Common/Plugins/BasePlugin.cs
+++ b/MediaBrowser.Common/Plugins/BasePlugin.cs
@@ -1,5 +1,4 @@
using MediaBrowser.Common.Kernel;
-using MediaBrowser.Common.Serialization;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Plugins;
using System;
@@ -7,6 +6,7 @@ using System.IO;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Threading;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Common.Plugins
{
@@ -188,7 +188,7 @@ namespace MediaBrowser.Common.Plugins
get
{
// Lazy load
- LazyInitializer.EnsureInitialized(ref _configuration, ref _configurationInitialized, ref _configurationSyncLock, () => XmlSerializer.GetXmlConfiguration(ConfigurationType, ConfigurationFilePath, Logger) as TConfigurationType);
+ LazyInitializer.EnsureInitialized(ref _configuration, ref _configurationInitialized, ref _configurationSyncLock, () => Kernel.GetXmlConfiguration(ConfigurationType, ConfigurationFilePath) as TConfigurationType);
return _configuration;
}
protected set
@@ -270,25 +270,37 @@ namespace MediaBrowser.Common.Plugins
public ILogger Logger { get; private set; }
/// <summary>
+ /// Gets the XML serializer.
+ /// </summary>
+ /// <value>The XML serializer.</value>
+ protected IXmlSerializer XmlSerializer { get; private set; }
+
+ /// <summary>
/// Starts the plugin.
/// </summary>
/// <param name="kernel">The kernel.</param>
+ /// <param name="xmlSerializer">The XML serializer.</param>
/// <param name="logger">The logger.</param>
/// <exception cref="System.ArgumentNullException">kernel</exception>
- public void Initialize(IKernel kernel, ILogger logger)
+ public void Initialize(IKernel kernel, IXmlSerializer xmlSerializer, ILogger logger)
{
if (kernel == null)
{
throw new ArgumentNullException("kernel");
}
+ if (xmlSerializer == null)
+ {
+ throw new ArgumentNullException("xmlSerializer");
+ }
+
if (logger == null)
{
throw new ArgumentNullException("logger");
}
-
+
+ XmlSerializer = xmlSerializer;
Logger = logger;
-
Kernel = kernel;
if (kernel.KernelContext == KernelContext.Server)