Code Duplication    Length = 22-22 lines in 2 locations

ProviderFactory/GeoPluginFactory.php 1 location

@@ 18-39 (lines=22) @@
15
use Http\Discovery\HttpClientDiscovery;
16
use Symfony\Component\OptionsResolver\OptionsResolver;
17
18
final class GeoPluginFactory extends AbstractFactory
19
{
20
    protected static $dependencies = [
21
        ['requiredClass' => GeoPlugin::class, 'packageName' => 'geocoder-php/geo-plugin-provider'],
22
    ];
23
24
    protected function getProvider(array $config)
25
    {
26
        $httplug = $config['httplug_client'] ?: HttpClientDiscovery::find();
27
28
        return new GeoPlugin($httplug);
29
    }
30
31
    protected static function configureOptionResolver(OptionsResolver $resolver)
32
    {
33
        $resolver->setDefaults([
34
            'httplug_client' => null,
35
        ]);
36
37
        $resolver->setAllowedTypes('httplug_client', [HttpClient::class, 'null']);
38
    }
39
}
40

ProviderFactory/HostIpFactory.php 1 location

@@ 18-39 (lines=22) @@
15
use Http\Discovery\HttpClientDiscovery;
16
use Symfony\Component\OptionsResolver\OptionsResolver;
17
18
final class HostIpFactory extends AbstractFactory
19
{
20
    protected static $dependencies = [
21
        ['requiredClass' => HostIp::class, 'packageName' => 'geocoder-php/host-ip-provider'],
22
    ];
23
24
    protected function getProvider(array $config)
25
    {
26
        $httplug = $config['httplug_client'] ?: HttpClientDiscovery::find();
27
28
        return new HostIp($httplug);
29
    }
30
31
    protected static function configureOptionResolver(OptionsResolver $resolver)
32
    {
33
        $resolver->setDefaults([
34
            'httplug_client' => null,
35
        ]);
36
37
        $resolver->setAllowedTypes('httplug_client', [HttpClient::class, 'null']);
38
    }
39
}
40