Route   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 9
c 2
b 0
f 0
dl 0
loc 19
rs 10
wmc 3

1 Method

Rating   Name   Duplication   Size   Complexity  
A actionExists() 0 15 3
1
<?php
2
3
namespace Squadron\Base\Helpers;
4
5
use Squadron\Base\Exceptions\SquadronHelperException;
6
7
class Route
8
{
9
    public static $defaultControllerNamespace = '\\App\\Http\\Controllers\\';
10
11
    public static function actionExists(string $action): bool
12
    {
13
        $actionData = explode('@', $action);
14
15
        if (count($actionData) === 2)
16
        {
17
            [$actionController, $actionMethod] = $actionData;
18
19
            $controllerNamespace = $actionController[0] !== '\\'
20
                                      ? self::$defaultControllerNamespace : '';
21
22
            return method_exists($controllerNamespace.$actionController, $actionMethod);
23
        }
24
25
        throw SquadronHelperException::badRouteActionString($action);
26
    }
27
}
28