Completed
Push — master ( 1eb12f...b3f467 )
by Elf
04:55
created

SupportServiceProvider::getServiceProviders()   B

Complexity

Conditions 3
Paths 4

Size

Total Lines 28
Code Lines 18

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 15
CRAP Score 3.1406

Importance

Changes 2
Bugs 0 Features 1
Metric Value
cc 3
eloc 18
nc 4
nop 0
dl 0
loc 28
ccs 15
cts 20
cp 0.75
crap 3.1406
rs 8.8571
c 2
b 0
f 1
1
<?php
2
3
namespace App\Support\Providers;
4
5
use App\Support\Http\ApiResponse;
6
use Illuminate\Contracts\Routing\ResponseFactory;
7
use Illuminate\Support\ServiceProvider;
8
9
class SupportServiceProvider extends ServiceProvider
10
{
11
    /**
12
     * Bootstrap the service provider.
13
     */
14 1
    public function boot()
15
    {
16 1
        $this->extendResponses();
17 1
    }
18
19
    /**
20
     * Extend responses.
21
     */
22 1
    protected function extendResponses()
23
    {
24 1
        $response = $this->app->make(ResponseFactory::class);
25
26 1
        $response->macro('api', function (...$args) {
27
            return new ApiResponse(...$args);
28 1
        });
29 1
    }
30
31
    /**
32
     * Register the service provider.
33
     */
34 1
    public function register()
35
    {
36 1
        array_map([$this->app, 'register'], $this->getServiceProviders());
37 1
    }
38
39
    /**
40
     * Get service providers to be registered.
41
     *
42
     * @return array
43
     */
44 1
    protected function getServiceProviders()
45
    {
46
        $services = [
47 1
            AppConfigServiceProvider::class,
48 1
            CaptchaServiceProvider::class,
49 1
            ClientServiceProvider::class,
50 1
            OptimusServiceProvider::class,
51 1
            XgPusherServiceProvider::class,
52 1
        ];
53
54 1
        if ($this->app->runningInConsole()) {
55 1
            array_push(
56 1
                $services,
57 1
                ConsoleServiceProvider::class,
58
                \BackupManager\Laravel\Laravel5ServiceProvider::class
59 1
            );
60 1
        }
61
62 1
        if ($this->app->isLocal()) {
63
            array_push(
64
                $services,
65
                \Barryvdh\Debugbar\ServiceProvider::class,
66
                \Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class
67
            );
68
        }
69
70 1
        return $services;
71
    }
72
}
73