AchievementProviderPluginManagerFactory   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 3

Importance

Changes 0
Metric Value
wmc 1
c 0
b 0
f 0
lcom 0
cbo 3
dl 0
loc 20
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A createService() 0 10 1
1
<?php
2
/**
3
 * AchievementProviderPluginManagerFactory
4
 *
5
 * @category  AxalianAchievements\ServiceFactory\AchievementProvider
6
 * @package   AxalianAchievements\ServiceFactory\AchievementProvider
7
 * @author    Michel Maas <[email protected]>
8
 */
9
10
namespace AxalianAchievements\ServiceFactory\AchievementProvider;
11
12
use AxalianAchievements\Options\ModuleOptions;
13
use AxalianAchievements\AchievementProvider\AchievementProviderPluginManager;
14
use Zend\ServiceManager\Config;
15
use Zend\ServiceManager\FactoryInterface;
16
use Zend\ServiceManager\ServiceLocatorInterface;
17
18
class AchievementProviderPluginManagerFactory implements FactoryInterface
19
{
20
21
    /**
22
     * Create service
23
     *
24
     * @param ServiceLocatorInterface $serviceLocator
25
     * @return AchievementProviderPluginManager
26
     */
27
    public function createService(ServiceLocatorInterface $serviceLocator)
28
    {
29
        /** @var ModuleOptions $mapOptions */
30
        $moduleOptions = $serviceLocator->get('AxalianAchievements\Options\ModuleOptions');
31
32
        $pluginManager = new AchievementProviderPluginManager(new Config($moduleOptions->getAchievementProviders()));
33
        $pluginManager->setServiceLocator($serviceLocator);
34
35
        return $pluginManager;
36
    }
37
}
38