diff --git a/MediaBrowser.Controller/Library/IMetadataSaver.cs b/MediaBrowser.Controller/Library/IMetadataSaver.cs
new file mode 100644
index 0000000000..fbb8af626a
--- /dev/null
+++ b/MediaBrowser.Controller/Library/IMetadataSaver.cs
@@ -0,0 +1,27 @@
+using MediaBrowser.Controller.Entities;
+using System.Threading;
+using System.Threading.Tasks;
+
+namespace MediaBrowser.Controller.Library
+{
+ ///
+ /// Interface IMetadataSaver
+ ///
+ public interface IMetadataSaver
+ {
+ ///
+ /// Supportses the specified item.
+ ///
+ /// The item.
+ /// true if XXXX, false otherwise
+ bool Supports(BaseItem item);
+
+ ///
+ /// Saves the specified item.
+ ///
+ /// The item.
+ /// The cancellation token.
+ /// Task.
+ Task Save(BaseItem item, CancellationToken cancellationToken);
+ }
+}
diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
index 04e0a31ac6..feb3d90dd7 100644
--- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj
+++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
@@ -76,6 +76,7 @@
+
diff --git a/MediaBrowser.Model/DTO/ImageOptions.cs b/MediaBrowser.Model/DTO/ImageOptions.cs
index d6a9fd0ff5..5a306ec497 100644
--- a/MediaBrowser.Model/DTO/ImageOptions.cs
+++ b/MediaBrowser.Model/DTO/ImageOptions.cs
@@ -67,6 +67,6 @@ namespace MediaBrowser.Model.Dto
/// Gets or sets a value indicating whether [enable image enhancers].
///
/// true if [enable image enhancers]; otherwise, false.
- public bool? EnableImageEnhancers { get; set; }
+ public bool EnableImageEnhancers { get; set; }
}
}
diff --git a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
index 60afc8413d..1f215dde0f 100644
--- a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
+++ b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
@@ -143,6 +143,7 @@
+
diff --git a/MediaBrowser.Server.Implementations/Savers/MovieXmlSaver.cs b/MediaBrowser.Server.Implementations/Savers/MovieXmlSaver.cs
new file mode 100644
index 0000000000..f536f94964
--- /dev/null
+++ b/MediaBrowser.Server.Implementations/Savers/MovieXmlSaver.cs
@@ -0,0 +1,49 @@
+using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities.Movies;
+using MediaBrowser.Controller.Library;
+using MediaBrowser.Model.Entities;
+using System.Threading;
+using System.Threading.Tasks;
+
+namespace MediaBrowser.Server.Implementations.Savers
+{
+ ///
+ /// Saves movie.xml for movies, trailers and music videos
+ ///
+ public class MovieXmlSaver : IMetadataSaver
+ {
+ ///
+ /// Supportses the specified item.
+ ///
+ /// The item.
+ /// true if XXXX, false otherwise
+ public bool Supports(BaseItem item)
+ {
+ if (item.LocationType != LocationType.FileSystem)
+ {
+ return false;
+ }
+
+ var trailer = item as Trailer;
+
+ if (trailer != null)
+ {
+ return !trailer.IsLocalTrailer;
+ }
+
+ // Don't support local trailers
+ return item is Movie || item is MusicVideo;
+ }
+
+ ///
+ /// Saves the specified item.
+ ///
+ /// The item.
+ /// The cancellation token.
+ /// Task.
+ public Task Save(BaseItem item, CancellationToken cancellationToken)
+ {
+ return Task.Run(() => { });
+ }
+ }
+}