Passed
Push — master ( 304892...44e430 )
by Raffael
04:59
created

Cli::getUserOptions()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 23
Code Lines 20

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 23
ccs 0
cts 23
cp 0
rs 9.0856
c 0
b 0
f 0
cc 1
crap 2
eloc 20
nc 1
nop 0
1
<?php
2
3
declare(strict_types=1);
4
5
/**
6
 * balloon
7
 *
8
 * @copyright   Copryright (c) 2012-2018 gyselroth GmbH (https://gyselroth.com)
9
 * @license     GPL-3.0 https://opensource.org/licenses/GPL-3.0
10
 */
11
12
namespace Balloon\App\Cli\Constructor;
13
14
use Balloon\App\Cli\Console;
15
use GetOpt\GetOpt;
16
17
class Cli
18
{
19
    /**
20
     * GetOpt.
21
     *
22
     * @var GetOpt
23
     */
24
    protected $getopt;
25
26
    /**
27
     * Constructor.
28
     *
29
     * @param GetOpt $getopt
30
     */
31
    public function __construct(GetOpt $getopt)
32
    {
33
        $this->getopt = $getopt;
34
        $getopt->addCommands([
35
            \GetOpt\Command::create('users', Console\User::class)
36
                ->addOptions(Console\User::getOptions())
37
                ->addOperands(Console\User::getOperands()),
38
            \GetOpt\Command::create('groups', Console\Group::class)
39
                ->addOptions(Console\Group::getOptions())
40
                ->addOperands(Console\User::getOperands()),
41
            \GetOpt\Command::create('jobs', Console\Jobs::class)
42
                ->addOptions(Console\Jobs::getOptions())
43
                ->addOperands(Console\User::getOperands()),
44
            \GetOpt\Command::create('upgrade', Console\Upgrade::class)
45
                ->addOptions(Console\Upgrade::getOptions())
46
                ->addOperands(Console\User::getOperands()),
47
        ]);
48
    }
49
}
50