Viewing file: LumenModulesServiceProvider.php (1.42 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Nwidart\Modules;
use Nwidart\Modules\Support\Stub;
class LumenModulesServiceProvider extends ModulesServiceProvider { /** * Booting the package. */ public function boot() { $this->setupStubPath(); }
/** * Register all modules. */ public function register() { $this->registerNamespaces(); $this->registerServices(); $this->registerModules(); $this->registerProviders(); }
/** * Setup stub path. */ public function setupStubPath() { Stub::setBasePath(__DIR__ . '/Commands/stubs');
if (app('modules')->config('stubs.enabled') === true) { Stub::setBasePath(app('modules')->config('stubs.path')); } }
/** * {@inheritdoc} */ protected function registerServices() { $this->app->singleton(Contracts\RepositoryInterface::class, function ($app) { $path = $app['config']->get('modules.paths.modules');
return new Lumen\LumenFileRepository($app, $path); }); $this->app->singleton(Contracts\ActivatorInterface::class, function ($app) { $activator = $app['config']->get('modules.activator'); $class = $app['config']->get('modules.activators.' . $activator)['class'];
return new $class($app); }); $this->app->alias(Contracts\RepositoryInterface::class, 'modules'); } }
|