Skip to content

Commit 7125e2b

Browse files
authored
Merge pull request #251 from rakelley/chain-provider-must-be-provided-with-logger
Add logger support to ChainFactory
2 parents 0ea7643 + 15e5d66 commit 7125e2b

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

ProviderFactory/ChainFactory.php

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,17 @@
1414

1515
use Geocoder\Provider\Chain\Chain;
1616
use Geocoder\Provider\Provider;
17+
use Psr\Log\LoggerAwareInterface;
18+
use Psr\Log\LoggerAwareTrait;
1719
use Symfony\Component\OptionsResolver\OptionsResolver;
1820

1921
/**
2022
* @author Tobias Nyholm <[email protected]>
2123
*/
22-
final class ChainFactory extends AbstractFactory
24+
final class ChainFactory extends AbstractFactory implements LoggerAwareInterface
2325
{
26+
use LoggerAwareTrait;
27+
2428
protected static $dependencies = [
2529
['requiredClass' => Chain::class, 'packageName' => 'geocoder-php/chain-provider'],
2630
];
@@ -30,7 +34,12 @@ final class ChainFactory extends AbstractFactory
3034
*/
3135
protected function getProvider(array $config): Provider
3236
{
33-
return new Chain($config['services']);
37+
$provider = new Chain($config['services']);
38+
if (null !== $this->logger) {
39+
$provider->setLogger($this->logger);
40+
}
41+
42+
return $provider;
3443
}
3544

3645
/**

Resources/config/services.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ services:
2626
Bazinga\GeocoderBundle\ProviderFactory\:
2727
resource: '../../ProviderFactory'
2828
public: false
29+
autoconfigure: true
2930

3031
Geocoder\ProviderAggregator:
3132
class: Geocoder\ProviderAggregator

0 commit comments

Comments
 (0)