Skip to content

Commit c557496

Browse files
committed
WIP
1 parent 26504f6 commit c557496

File tree

3 files changed

+39
-13
lines changed

3 files changed

+39
-13
lines changed

ClientConfiguration.php

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<?php
2+
3+
namespace Wtfz\TmdbBundle;
4+
5+
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
6+
use Symfony\Component\HttpFoundation\ParameterBag;
7+
use Tmdb\ConfigurationInterface;
8+
9+
class ClientConfiguration extends ParameterBag implements ConfigurationInterface {
10+
/**
11+
* @param EventDispatcherInterface $eventDispatcher
12+
* @param array $options
13+
*/
14+
public function __construct(
15+
EventDispatcherInterface $eventDispatcher,
16+
array $options = []
17+
){
18+
$this->parameters = $options;
19+
20+
$this->parameters['event_dispatcher'] = $eventDispatcher;
21+
}
22+
23+
/**
24+
* @return array
25+
*/
26+
public function all()
27+
{
28+
return $this->parameters;
29+
}
30+
}

DependencyInjection/WtfzTmdbExtension.php

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,7 @@ public function load(array $configs, ContainerBuilder $container)
4545
$options = $this->handleLog($options);
4646
}
4747

48-
foreach($options as $key => $value) {
49-
$container->setParameter(sprintf(
50-
'wtfz_tmdb.options.%s',
51-
$key
52-
), $value);
53-
}
48+
$container->setParameter('wtfz_tmdb.options', $options);
5449
}
5550

5651
protected function handleCache($options)

Resources/config/services.xml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
<parameter key="wtfz_tmdb.api_key" />
1010
<!-- Main classes -->
1111
<parameter key="wtfz_tmdb.client.class">Tmdb\Client</parameter>
12+
<parameter key="wtfz_tmdb.client_configuration.class">Wtfz\TmdbBundle\ClientConfiguration</parameter>
1213
<parameter key="wtfz_tmdb.api_token.class">Tmdb\ApiToken</parameter>
1314
<parameter key="wtfz_tmdb.request_token.class">Tmdb\RequestToken</parameter>
1415
<parameter key="wtfz_tmdb.session_token.class">Tmdb\SessionToken</parameter>
@@ -17,16 +18,16 @@
1718
<services>
1819
<service id="wtfz_tmdb.client" class="%wtfz_tmdb.client.class%">
1920
<argument type="service" id="wtfz_tmdb.api_token" />
20-
<argument type="collection">
21-
<argument key="event_dispatcher" type="service" id="event_dispatcher" />
22-
<argument key="secure">%wtfz_tmdb.options.secure%</argument>
23-
<argument key="adapter">%wtfz_tmdb.options.adapter%</argument>
24-
<argument key="cache">%wtfz_tmdb.options.cache%</argument>
25-
<argument key="log">%wtfz_tmdb.options.log%</argument>
26-
</argument>
21+
<argument type="service" id="wtfz_tmdb.configuration" />
2722
</service>
23+
2824
<service id="wtfz_tmdb.api_token" class="%wtfz_tmdb.api_token.class%" public="false">
2925
<argument>%wtfz_tmdb.api_key%</argument>
3026
</service>
27+
28+
<service id="wtfz_tmdb.configuration" class="%wtfz_tmdb.client_configuration.class%" public="false">
29+
<argument key="event_dispatcher" type="service" id="event_dispatcher" />
30+
<argument>%wtfz_tmdb.options%</argument>
31+
</service>
3132
</services>
3233
</container>

0 commit comments

Comments
 (0)