diff options
5 files changed, 23 insertions, 7 deletions
diff --git a/MediaBrowser.Controller/Entities/IVirtualFolderCreator.cs b/MediaBrowser.Controller/Entities/IVirtualFolderCreator.cs new file mode 100644 index 000000000..57e9e8d5d --- /dev/null +++ b/MediaBrowser.Controller/Entities/IVirtualFolderCreator.cs @@ -0,0 +1,15 @@ + +namespace MediaBrowser.Controller.Entities +{ + /// <summary> + /// Interface IVirtualFolderCreator + /// </summary> + public interface IVirtualFolderCreator + { + /// <summary> + /// Gets the folder. + /// </summary> + /// <returns>Folder.</returns> + BasePluginFolder GetFolder(); + } +} diff --git a/MediaBrowser.Controller/Kernel.cs b/MediaBrowser.Controller/Kernel.cs index 25a049435..6bd48a502 100644 --- a/MediaBrowser.Controller/Kernel.cs +++ b/MediaBrowser.Controller/Kernel.cs @@ -230,8 +230,7 @@ namespace MediaBrowser.Controller /// Gets the list of BasePluginFolders added by plugins /// </summary> /// <value>The plugin folders.</value> - [ImportMany(typeof(BasePluginFolder))] - internal IEnumerable<BasePluginFolder> PluginFolders { get; private set; } + internal IEnumerable<IVirtualFolderCreator> PluginFolderCreators { get; private set; } /// <summary> /// Gets the list of available user repositories @@ -387,6 +386,7 @@ namespace MediaBrowser.Controller IntroProviders = GetExports<IIntroProvider>(allTypes); PluginConfigurationPages = GetExports<IPluginConfigurationPage>(allTypes); ImageEnhancers = GetExports<IImageEnhancer>(allTypes); + PluginFolderCreators = GetExports<IVirtualFolderCreator>(allTypes); } /// <summary> diff --git a/MediaBrowser.Controller/Library/LibraryManager.cs b/MediaBrowser.Controller/Library/LibraryManager.cs index 4087f9ef8..dfaef12cb 100644 --- a/MediaBrowser.Controller/Library/LibraryManager.cs +++ b/MediaBrowser.Controller/Library/LibraryManager.cs @@ -186,9 +186,9 @@ namespace MediaBrowser.Controller.Library var rootFolder = Kernel.ItemRepository.RetrieveItem(rootFolderPath.GetMBId(typeof(AggregateFolder))) as AggregateFolder ?? (AggregateFolder)GetItem(rootFolderPath); // Add in the plug-in folders - foreach (var child in Kernel.PluginFolders) + foreach (var child in Kernel.PluginFolderCreators) { - rootFolder.AddVirtualChild(child); + rootFolder.AddVirtualChild(child.GetFolder()); } return rootFolder; diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj index 26107b9c9..cfd14f2b7 100644 --- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj +++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj @@ -95,6 +95,7 @@ <Compile Include="Entities\Genre.cs" /> <Compile Include="Entities\ICollectionFolder.cs" /> <Compile Include="Entities\IndexFolder.cs" /> + <Compile Include="Entities\IVirtualFolderCreator.cs" /> <Compile Include="Entities\Movies\BoxSet.cs" /> <Compile Include="Entities\Movies\Movie.cs" /> <Compile Include="Entities\Person.cs" /> diff --git a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj index 91ca577a7..85efe04f1 100644 --- a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj +++ b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj @@ -389,9 +389,9 @@ <EmbeddedResource Include="Html\css\images\itemDetails\videoDefault.png" />
<EmbeddedResource Include="Html\css\images\itemDetails\audioDefault.png" />
<EmbeddedResource Include="Html\css\images\itemDetails\gameDefault.png" />
- <Content Include="Html\css\images\mblogoicon.png" />
- <Content Include="Html\css\images\mblogotextblack.png" />
- <Content Include="Html\css\images\mblogotextwhite.png" />
+ <EmbeddedResource Include="Html\css\images\mblogoicon.png" />
+ <EmbeddedResource Include="Html\css\images\mblogotextblack.png" />
+ <EmbeddedResource Include="Html\css\images\mblogotextwhite.png" />
<Content Include="Html\css\images\stars.png" />
<EmbeddedResource Include="Html\scripts\MediaPlayer.js" />
</ItemGroup>
|
