Passed
Push — master ( 190c0b...114f77 )
by Reza
03:44
created

MultiSelect::dataProvider()   A

Complexity

Conditions 4
Paths 3

Size

Total Lines 19
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 4
eloc 9
c 1
b 0
f 0
nc 3
nop 1
dl 0
loc 19
rs 9.9666
1
<?php
2
3
namespace EasyPanel\Parsers\HTMLInputs;
4
5
use \Exception;
6
7
class MultiSelect extends BaseInput
8
{
9
    protected $stub = 'multi-select.stub';
10
11
    public function dataProvider($array)
12
    {
13
        $this->stub = 'multi-select-provider.stub';
14
15
        [$class, $method] = $array;
16
17
        if (! class_exists($class)){
18
            throw new Exception("Class {$class} doesn't exist.");
19
        }
20
21
        $method = $method ?: 'handle';
22
23
        if (! method_exists($class, $method)){
24
            throw new Exception("Method {$method} doesn't exist on {$class} class.");
25
        }
26
27
        $this->provider = "\\{$class}::{$method}()";
28
29
        return $this;
30
    }
31
}
32