Completed
Push — master ( f8cf90...7b8788 )
by Nicolas
19s queued 12s
created

LaravelModulesServiceProvider::setupStubPath()   A

Complexity

Conditions 2
Paths 1

Size

Total Lines 10
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 2.0185

Importance

Changes 0
Metric Value
dl 0
loc 10
rs 9.4285
c 0
b 0
f 0
ccs 5
cts 6
cp 0.8333
cc 2
eloc 5
nc 1
nop 0
crap 2.0185
1
<?php
2
3
namespace Nwidart\Modules;
4
5
use Nwidart\Modules\Support\Stub;
6
7
class LaravelModulesServiceProvider extends ModulesServiceProvider
8
{
9
    /**
10
     * Booting the package.
11
     */
12 181
    public function boot()
13
    {
14 181
        $this->registerNamespaces();
15 181
        $this->registerModules();
16 181
    }
17
18
    /**
19
     * Register the service provider.
20
     */
21 181
    public function register()
22
    {
23 181
        $this->registerServices();
24 181
        $this->setupStubPath();
25 181
        $this->registerProviders();
26 181
    }
27
28
    /**
29
     * Setup stub path.
30
     */
31 181
    public function setupStubPath()
32
    {
33 181
        Stub::setBasePath(__DIR__ . '/Commands/stubs');
34
35
        $this->app->booted(function ($app) {
36 181
            if ($app['modules']->config('stubs.enabled') === true) {
37
                Stub::setBasePath($app['modules']->config('stubs.path'));
38
            }
39 181
        });
40 181
    }
41
42
    /**
43
     * {@inheritdoc}
44
     */
45 181 View Code Duplication
    protected function registerServices()
46
    {
47
        $this->app->singleton('modules', function ($app) {
48 181
            $path = $app['config']->get('modules.paths.modules');
49
50 181
            return new \Nwidart\Modules\Laravel\Repository($app, $path);
51 181
        });
52 181
    }
53
}
54