diff --git a/module/VuFind/config/module.config.php b/module/VuFind/config/module.config.php index f76dfdab4a57568a53a54247ec9e06ad34e5f647..0a1430878cb74e4e0898f3475b4a425ccc34ceef 100644 --- a/module/VuFind/config/module.config.php +++ b/module/VuFind/config/module.config.php @@ -615,51 +615,7 @@ $config = [ 'xcncip2' => 'VuFind\ILS\Driver\XCNCIP2', ], ], - 'recommend' => [ - 'abstract_factories' => ['VuFind\Recommend\PluginFactory'], - 'factories' => [ - 'authorfacets' => 'VuFind\Recommend\Factory::getAuthorFacets', - 'authorinfo' => 'VuFind\Recommend\Factory::getAuthorInfo', - 'authorityrecommend' => 'VuFind\Recommend\Factory::getAuthorityRecommend', - 'catalogresults' => 'VuFind\Recommend\Factory::getCatalogResults', - 'collectionsidefacets' => 'VuFind\Recommend\Factory::getCollectionSideFacets', - 'dplaterms' => 'VuFind\Recommend\Factory::getDPLATerms', - 'europeanaresults' => 'VuFind\Recommend\Factory::getEuropeanaResults', - 'expandfacets' => 'VuFind\Recommend\Factory::getExpandFacets', - 'favoritefacets' => 'VuFind\Recommend\Factory::getFavoriteFacets', - 'mapselection' => 'VuFind\Recommend\Factory::getMapSelection', - 'sidefacets' => 'VuFind\Recommend\Factory::getSideFacets', - 'randomrecommend' => 'VuFind\Recommend\Factory::getRandomRecommend', - 'summonbestbets' => 'VuFind\Recommend\Factory::getSummonBestBets', - 'summondatabases' => 'VuFind\Recommend\Factory::getSummonDatabases', - 'summonresults' => 'VuFind\Recommend\Factory::getSummonResults', - 'summontopics' => 'VuFind\Recommend\Factory::getSummonTopics', - 'switchquery' => 'VuFind\Recommend\Factory::getSwitchQuery', - 'topfacets' => 'VuFind\Recommend\Factory::getTopFacets', - 'visualfacets' => 'VuFind\Recommend\Factory::getVisualFacets', - 'webresults' => 'VuFind\Recommend\Factory::getWebResults', - 'worldcatidentities' => 'VuFind\Recommend\Factory::getWorldCatIdentities', - ], - 'invokables' => [ - 'alphabrowselink' => 'VuFind\Recommend\AlphaBrowseLink', - 'channels' => 'VuFind\Recommend\Channels', - 'doi' => 'VuFind\Recommend\DOI', - 'europeanaresultsdeferred' => 'VuFind\Recommend\EuropeanaResultsDeferred', - 'facetcloud' => 'VuFind\Recommend\FacetCloud', - 'libraryh3lp' => 'VuFind\Recommend\Libraryh3lp', - 'openlibrarysubjects' => 'VuFind\Recommend\OpenLibrarySubjects', - 'openlibrarysubjectsdeferred' => 'VuFind\Recommend\OpenLibrarySubjectsDeferred', - 'pubdatevisajax' => 'VuFind\Recommend\PubDateVisAjax', - 'removefilters' => 'VuFind\Recommend\RemoveFilters', - 'resultgooglemapajax' => 'VuFind\Recommend\Deprecated', - 'spellingsuggestions' => 'VuFind\Recommend\SpellingSuggestions', - 'summonbestbetsdeferred' => 'VuFind\Recommend\SummonBestBetsDeferred', - 'summondatabasesdeferred' => 'VuFind\Recommend\SummonDatabasesDeferred', - 'summonresultsdeferred' => 'VuFind\Recommend\SummonResultsDeferred', - 'switchtype' => 'VuFind\Recommend\SwitchType', - 'worldcatterms' => 'VuFind\Recommend\Deprecated', - ], - ], + 'recommend' => [ /* See VuFind\Recommend\PluginManager for defaults */ ], 'recorddriver' => [ 'abstract_factories' => ['VuFind\RecordDriver\PluginFactory'], 'factories' => [ diff --git a/module/VuFind/src/VuFind/Recommend/PluginManager.php b/module/VuFind/src/VuFind/Recommend/PluginManager.php index 320b00828c7dbd882032bf9d55e595d0906d1bd0..51b496900044f46203e0808c48df6650556a894d 100644 --- a/module/VuFind/src/VuFind/Recommend/PluginManager.php +++ b/module/VuFind/src/VuFind/Recommend/PluginManager.php @@ -38,6 +38,128 @@ namespace VuFind\Recommend; */ class PluginManager extends \VuFind\ServiceManager\AbstractPluginManager { + /** + * Default plugin aliases. + * + * @var array + */ + protected $aliases = [ + 'alphabrowselink' => 'VuFind\Recommend\AlphaBrowseLink', + 'authorfacets' => 'VuFind\Recommend\AuthorFacets', + 'authorinfo' => 'VuFind\Recommend\AuthorInfo', + 'authorityrecommend' => 'VuFind\Recommend\AuthorityRecommend', + 'catalogresults' => 'VuFind\Recommend\CatalogResults', + 'channels' => 'VuFind\Recommend\Channels', + 'collectionsidefacets' => 'VuFind\Recommend\CollectionSideFacets', + 'doi' => 'VuFind\Recommend\DOI', + 'dplaterms' => 'VuFind\Recommend\DPLATerms', + 'europeanaresults' => 'VuFind\Recommend\EuropeanaResults', + 'europeanaresultsdeferred' => 'VuFind\Recommend\EuropeanaResultsDeferred', + 'expandfacets' => 'VuFind\Recommend\ExpandFacets', + 'facetcloud' => 'VuFind\Recommend\FacetCloud', + 'favoritefacets' => 'VuFind\Recommend\FavoriteFacets', + 'libraryh3lp' => 'VuFind\Recommend\Libraryh3lp', + 'mapselection' => 'VuFind\Recommend\MapSelection', + 'sidefacets' => 'VuFind\Recommend\SideFacets', + 'openlibrarysubjects' => 'VuFind\Recommend\OpenLibrarySubjects', + 'openlibrarysubjectsdeferred' => + 'VuFind\Recommend\OpenLibrarySubjectsDeferred', + 'pubdatevisajax' => 'VuFind\Recommend\PubDateVisAjax', + 'randomrecommend' => 'VuFind\Recommend\RandomRecommend', + 'removefilters' => 'VuFind\Recommend\RemoveFilters', + 'resultgooglemapajax' => 'VuFind\Recommend\Deprecated', + 'spellingsuggestions' => 'VuFind\Recommend\SpellingSuggestions', + 'summonbestbets' => 'VuFind\Recommend\SummonBestBets', + 'summonbestbetsdeferred' => 'VuFind\Recommend\SummonBestBetsDeferred', + 'summondatabases' => 'VuFind\Recommend\SummonDatabases', + 'summondatabasesdeferred' => 'VuFind\Recommend\SummonDatabasesDeferred', + 'summonresults' => 'VuFind\Recommend\SummonResults', + 'summonresultsdeferred' => 'VuFind\Recommend\SummonResultsDeferred', + 'summontopics' => 'VuFind\Recommend\SummonTopics', + 'switchquery' => 'VuFind\Recommend\SwitchQuery', + 'switchtype' => 'VuFind\Recommend\SwitchType', + 'topfacets' => 'VuFind\Recommend\TopFacets', + 'visualfacets' => 'VuFind\Recommend\VisualFacets', + 'webresults' => 'VuFind\Recommend\WebResults', + 'worldcatidentities' => 'VuFind\Recommend\WorldCatIdentities', + 'worldcatterms' => 'VuFind\Recommend\Deprecated', + ]; + + /** + * Default plugin factories. + * + * @var array + */ + protected $factories = [ + 'VuFind\Recommend\AlphaBrowseLink' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\AuthorFacets' => + 'VuFind\Recommend\Factory::getAuthorFacets', + 'VuFind\Recommend\AuthorInfo' => 'VuFind\Recommend\Factory::getAuthorInfo', + 'VuFind\Recommend\AuthorityRecommend' => + 'VuFind\Recommend\Factory::getAuthorityRecommend', + 'VuFind\Recommend\CatalogResults' => + 'VuFind\Recommend\Factory::getCatalogResults', + 'VuFind\Recommend\Channels' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\CollectionSideFacets' => + 'VuFind\Recommend\Factory::getCollectionSideFacets', + 'VuFind\Recommend\Deprecated' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\DOI' => 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\DPLATerms' => 'VuFind\Recommend\Factory::getDPLATerms', + 'VuFind\Recommend\EuropeanaResults' => + 'VuFind\Recommend\Factory::getEuropeanaResults', + 'VuFind\Recommend\EuropeanaResultsDeferred' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\ExpandFacets' => + 'VuFind\Recommend\Factory::getExpandFacets', + 'VuFind\Recommend\FacetCloud' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\FavoriteFacets' => + 'VuFind\Recommend\Factory::getFavoriteFacets', + 'VuFind\Recommend\Libraryh3lp' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\MapSelection' => + 'VuFind\Recommend\Factory::getMapSelection', + 'VuFind\Recommend\SideFacets' => 'VuFind\Recommend\Factory::getSideFacets', + 'VuFind\Recommend\OpenLibrarySubjects' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\OpenLibrarySubjectsDeferred' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\PubDateVisAjax' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\RandomRecommend' => + 'VuFind\Recommend\Factory::getRandomRecommend', + 'VuFind\Recommend\RemoveFilters' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\SpellingSuggestions' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\SummonBestBets' => + 'VuFind\Recommend\Factory::getSummonBestBets', + 'VuFind\Recommend\SummonBestBetsDeferred' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\SummonDatabases' => + 'VuFind\Recommend\Factory::getSummonDatabases', + 'VuFind\Recommend\SummonDatabasesDeferred' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\SummonResults' => + 'VuFind\Recommend\Factory::getSummonResults', + 'VuFind\Recommend\SummonResultsDeferred' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\SummonTopics' => + 'VuFind\Recommend\Factory::getSummonTopics', + 'VuFind\Recommend\SwitchQuery' => 'VuFind\Recommend\Factory::getSwitchQuery', + 'VuFind\Recommend\SwitchType' => + 'Zend\ServiceManager\Factory\InvokableFactory', + 'VuFind\Recommend\TopFacets' => 'VuFind\Recommend\Factory::getTopFacets', + 'VuFind\Recommend\VisualFacets' => + 'VuFind\Recommend\Factory::getVisualFacets', + 'VuFind\Recommend\WebResults' => 'VuFind\Recommend\Factory::getWebResults', + 'VuFind\Recommend\WorldCatIdentities' => + 'VuFind\Recommend\Factory::getWorldCatIdentities', + ]; + /** * Constructor * @@ -54,6 +176,7 @@ class PluginManager extends \VuFind\ServiceManager\AbstractPluginManager // we are building a brand new object. $this->sharedByDefault = false; + $this->addAbstractFactory('VuFind\Recommend\PluginFactory'); parent::__construct($configOrContainerInstance, $v3config); }