CreateBroker   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 43
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 2
dl 0
loc 43
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A handle() 0 12 1
A __construct() 0 3 1
1
<?php
2
3
namespace Zefy\LaravelSSO\Commands;
4
5
use Illuminate\Console\Command;
6
7
class CreateBroker extends Command
8
{
9
    /**
10
     * The name and signature of the console command.
11
     *
12
     * @var string
13
     */
14
    protected $signature = 'sso:broker:create {name}';
15
16
    /**
17
     * The console command description.
18
     *
19
     * @var string
20
     */
21
    protected $description = 'Creating new SSO broker.';
22
23
    /**
24
     * Create a new command instance.
25
     *
26
     * @return void
27
     */
28
    public function __construct()
29
    {
30
        parent::__construct();
31
    }
32
33
    /**
34
     * Execute the console command.
35
     *
36
     * @return mixed
37
     */
38
    public function handle()
39
    {
40
        $brokerClass = app(config('laravel-sso.brokersModel'));
41
        $broker = new $brokerClass;
42
43
        $broker->name = $this->argument('name');
44
        $broker->secret = str_random(40);
45
46
        $broker->save();
47
48
        $this->info('Broker with name `' . $this->argument('name') . '` successfully created.');
49
        $this->info('Secret: ' . $broker->secret);
50
    }
51
}
52