Example #1
0
        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);
            }
        }
Example #2
0
        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);
            }
        }