LaravelActuatorServiceProvider   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 4

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 3
lcom 1
cbo 4
dl 0
loc 24
ccs 0
cts 17
cp 0
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A boot() 0 9 2
A register() 0 11 1
1
<?php
2
3
namespace Nwidart\Actuator;
4
5
use Illuminate\Support\ServiceProvider;
6
use Nwidart\Actuator\Health\HealthBuilder;
7
use Nwidart\Actuator\Health\HealthContributorRegistry;
8
use Nwidart\Actuator\Health\HealthContributorRegistryBuilder;
9
10
class LaravelActuatorServiceProvider extends ServiceProvider
11
{
12
    public function boot()
13
    {
14
        if ($this->app->runningInConsole()) {
15
            $this->publishes([
16
                __DIR__ . '/../config/actuator.php' => config_path('actuator.php'),
17
            ], 'config');
18
        }
19
        $this->loadRoutesFrom(__DIR__ . '/routes.php');
20
    }
21
22
    public function register()
23
    {
24
        $this->mergeConfigFrom(__DIR__ . '/../config/actuator.php', 'actuator');
25
26
        $this->app->singleton(HealthContributorRegistry::class, static function () {
27
            return (new HealthContributorRegistryBuilder())->build();
28
        });
29
        $this->app->singleton(HealthBuilder::class, static function ($app) {
30
            return new HealthBuilder($app[HealthContributorRegistry::class]);
31
        });
32
    }
33
}
34