Skip to content
Snippets Groups Projects
Modules.php 1.82 KiB
Newer Older
  • Learn to ignore specific revisions
  • <?php namespace Config;
    
    // Cannot extend BaseConfig or looping resources occurs.
    class Modules
    {
    
    	 |--------------------------------------------------------------------------
    	 | Auto-Discovery Enabled?
    	 |--------------------------------------------------------------------------
    	 |
    	 | If true, then auto-discovery will happen across all elements listed in
    	 | $activeExplorers below. If false, no auto-discovery will happen at all,
    	 | giving a slight performance boost.
    	 */
    
    	 |--------------------------------------------------------------------------
    	 | Auto-Discovery Within Composer Packages Enabled?
    	 |--------------------------------------------------------------------------
    	 |
    	 | If true, then auto-discovery will happen across all namespaces loaded
    	 | by Composer, as well as the namespaces configured locally.
    	 */
    
        public $discoverInComposer = true;
    
    	|--------------------------------------------------------------------------
    	| Auto-discover Rules
    	|--------------------------------------------------------------------------
    	|
    	| Lists the aliases of all discovery classes that will be active
    	| and used during the current application request. If it is not
    	| listed here, only the base application elements will be used.
    	*/
    
        public $activeExplorers = ['events', 'registrars', 'routes', 'services'];
    
        /**
         * Should the application auto-discover the requested resources.
         *
         * Valid values are:
         *  - events
         *  - registrars
         *  - routes
         *  - services
         *
         * @param string $alias
         *
         * @return boolean
         */
        public function shouldDiscover(string $alias)
        {
            if (!$this->enabled) {
                return false;
            }
    
            $alias = strtolower($alias);
    
            return in_array($alias, $this->activeExplorers);
        }