Passed
Push — master ( 58f663...b8ea62 )
by Christian
08:04 queued 12s
created

MageFacade::domain()   A

Complexity

Conditions 5
Paths 5

Size

Total Lines 20
Code Lines 16

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 16
CRAP Score 5

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 5
eloc 16
c 1
b 0
f 0
nc 5
nop 1
dl 0
loc 20
ccs 16
cts 16
cp 1
crap 5
rs 9.4222
1
<?php
2
3
namespace Omatech\Mage\Core;
4
5
use Exception;
6
use Illuminate\Support\Facades\Facade;
7
use Omatech\Mage\Core\Facades\RoleFacade;
8
use Omatech\Mage\Core\Facades\UserFacade;
9
use Omatech\Mage\Core\Facades\PermissionFacade;
10
use Omatech\Mage\Core\Facades\TranslationFacade;
11
12
class MageFacade extends Facade
13
{
14 5
    public static function domain(string $domain)
15
    {
16 5
        switch($domain) {
17 5
            case 'Permission':
18 1
                $facade = PermissionFacade::class;
19 1
                break;
20 4
            case 'Role':
21 1
                $facade = RoleFacade::class;
22 1
                break;
23 3
            case 'User':
24 1
                $facade = UserFacade::class;
25 1
                break;
26 2
            case 'Translation':
27 1
                $facade = TranslationFacade::class;
28 1
                break;
29
            default:
30 1
                throw new Exception;
31
        }
32
33 4
        return $facade;
34
    }
35
}
36