protected void LoadProviders() { lock (concurrentCompositionLock) { var loader = new IndexedPluginLoader <int>("Id"); loader.AddFromTreeMatch(@"PlugIns\MPExtended.PlugIns.MAS.*", @"Plugins\Media"); loader.AddExport <IPluginData>(new PluginData()); loader.AddRequiredMetadata("Id"); loader.AddRequiredMetadata("Name"); MovieLibraries = new LibraryList <IMovieLibrary>(loader.GetIndexedPlugins <IMovieLibrary>(), ProviderType.Movie); MusicLibraries = new LibraryList <IMusicLibrary>(loader.GetIndexedPlugins <IMusicLibrary>(), ProviderType.Music); TVShowLibraries = new LibraryList <ITVShowLibrary>(loader.GetIndexedPlugins <ITVShowLibrary>(), ProviderType.TVShow); PictureLibraries = new LibraryList <IPictureLibrary>(loader.GetIndexedPlugins <IPictureLibrary>(), ProviderType.Picture); FileSystemLibraries = new LibraryList <IFileSystemLibrary>(loader.GetIndexedPlugins <IFileSystemLibrary>(), ProviderType.Filesystem); PlaylistLibraries = new LibraryList <IPlaylistLibrary>(loader.GetIndexedPlugins <IPlaylistLibrary>(), ProviderType.Playlist); } }
protected void LoadProviders() { lock (concurrentCompositionLock) { var loader = new IndexedPluginLoader<int>("Id"); loader.AddFromTreeMatch(@"PlugIns\MPExtended.PlugIns.MAS.*", @"Plugins\Media"); loader.AddExport<IPluginData>(new PluginData()); loader.AddRequiredMetadata("Id"); loader.AddRequiredMetadata("Name"); MovieLibraries = new LibraryList<IMovieLibrary>(loader.GetIndexedPlugins<IMovieLibrary>(), ProviderType.Movie); MusicLibraries = new LibraryList<IMusicLibrary>(loader.GetIndexedPlugins<IMusicLibrary>(), ProviderType.Music); TVShowLibraries = new LibraryList<ITVShowLibrary>(loader.GetIndexedPlugins<ITVShowLibrary>(), ProviderType.TVShow); PictureLibraries = new LibraryList<IPictureLibrary>(loader.GetIndexedPlugins<IPictureLibrary>(), ProviderType.Picture); FileSystemLibraries = new LibraryList<IFileSystemLibrary>(loader.GetIndexedPlugins<IFileSystemLibrary>(), ProviderType.Filesystem); PlaylistLibraries = new LibraryList<IPlaylistLibrary>(loader.GetIndexedPlugins<IPlaylistLibrary>(), ProviderType.Playlist); } }