AutoResourceLoaderPlugin   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 4
c 1
b 0
f 0
dl 0
loc 20
rs 10
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 3 1
A getResources() 0 3 1
1
<?php
2
namespace Apie\AutoResourceLoaderPlugin;
3
4
use Apie\Core\PluginInterfaces\ResourceProviderInterface;
5
use HaydenPierce\ClassFinder\ClassFinder;
6
7
/**
8
 * Returns all classes in a specific namespace to be used as API resources.
9
 */
10
class AutoResourceLoaderPlugin implements ResourceProviderInterface
11
{
12
    /**
13
     * @var string
14
     */
15
    private $namespace;
16
17
    public function __construct(string $namespace)
18
    {
19
        $this->namespace = $namespace;
20
    }
21
22
    /**
23
     * Returns all api resources.
24
     *
25
     * @return string[]
26
     */
27
    public function getResources(): array
28
    {
29
        return ClassFinder::getClassesInNamespace($this->namespace);
30
    }
31
}
32