SortRequestServiceProvider   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 8
c 1
b 0
f 0
dl 0
loc 35
rs 10
wmc 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A register() 0 4 1
A registerMacros() 0 6 1
A boot() 0 1 1
A registerConsoleCommands() 0 4 1
1
<?php
2
3
namespace musa11971\SortRequest;
4
5
use Illuminate\Database\Eloquent\Builder;
6
use Illuminate\Support\ServiceProvider;
7
use musa11971\SortRequest\Console\SorterMakeCommand;
8
9
class SortRequestServiceProvider extends ServiceProvider
10
{
11
    /**
12
     * Bootstrap the application services.
13
     */
14
    public function boot() { }
15
16
    /**
17
     * Register the application services.
18
     */
19
    public function register()
20
    {
21
        $this->registerConsoleCommands();
22
        $this->registerMacros();
23
    }
24
25
    /**
26
     * Register the console commands the package provides.
27
     */
28
    private function registerConsoleCommands()
29
    {
30
        $this->commands([
31
            SorterMakeCommand::class
32
        ]);
33
    }
34
35
    /**
36
     * Register the macros the package provides.
37
     */
38
    private function registerMacros()
39
    {
40
        Builder::macro('sortViaRequest', function ($request) {
41
            $handler = new EloquentSortingHandler($request, $this);
42
43
            return $handler->handle();
44
        });
45
    }
46
}
47