Completed
Push — master ( b767c5...32a7b4 )
by ARCANEDEV
11s
created

SpamBlockerServiceProvider::getBasePath()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 4
c 0
b 0
f 0
ccs 2
cts 2
cp 1
rs 10
cc 1
eloc 2
nc 1
nop 0
crap 1
1
<?php namespace Arcanedev\SpamBlocker;
2
3
use Arcanedev\Support\PackageServiceProvider as ServiceProvider;
4
5
/**
6
 * Class     SpamBlockerServiceProvider
7
 *
8
 * @package  Arcanedev\SpamBlocker
9
 * @author   ARCANEDEV <[email protected]>
10
 */
11
class SpamBlockerServiceProvider extends ServiceProvider
12
{
13
    /* -----------------------------------------------------------------
14
     |  Properties
15
     | -----------------------------------------------------------------
16
     */
17
18
    /**
19
     * Package name.
20
     *
21
     * @var string
22
     */
23
    protected $package = 'spam-blocker';
24
25
    /* -----------------------------------------------------------------
26
     |  Main Methods
27
     | -----------------------------------------------------------------
28
     */
29
30
    /**
31
     * Register the service provider.
32
     */
33 129
    public function register()
34
    {
35 129
        parent::register();
36
37 129
        $this->registerConfig();
38
39 129
        $this->registerSpamBlocker();
40 129
    }
41
42
    /**
43
     * Boot the service provider.
44
     */
45 129
    public function boot()
46
    {
47 129
        parent::boot();
48
49 129
        $this->publishConfig();
50 129
    }
51
52
    /**
53
     * Get the services provided by the provider.
54
     *
55
     * @return array
56
     */
57 3
    public function provides()
58
    {
59
        return [
60 1
            Contracts\SpamBlocker::class
61 2
        ];
62
    }
63
64
    /* -----------------------------------------------------------------
65
     |  Other Methods
66
     | -----------------------------------------------------------------
67
     */
68
69
    /**
70
     * Register the spam blocker
71
     */
72
    private function registerSpamBlocker()
73
    {
74 129
        $this->singleton(Contracts\SpamBlocker::class, function ($app) {
75
            /** @var  \Illuminate\Contracts\Config\Repository  $config */
76 84
            $config = $app['config'];
77
78 84
            return new SpamBlocker(
79 84
                $config->get('spam-blocker')
80 28
            );
81 129
        });
82 43
    }
83
}
84