Skip to content

Commit 561d2df

Browse files
committed
Replace plugins package with client-common
Applied fixes from StyleCI Add plugins dependency back as fallback Remove auto (default) config from plugins Update changelog Make sure to use a plugin version with correct interface
1 parent 43c3140 commit 561d2df

File tree

7 files changed

+36
-14
lines changed

7 files changed

+36
-14
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,11 @@
66

77
- Client factories for Buzz.
88

9+
### Changed
10+
11+
- **[BC] PluginClientFactory returns an instance of `Http\Client\Common\PluginClient`** (see [php-http/client-common#14](https://github.com/php-http/client-common/pull/14))
12+
- Plugins are loaded from their new packages, fall back to `php-http/plugins` if necessary
13+
914

1015
### Fixed
1116

ClientFactory/PluginClientFactory.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
namespace Http\HttplugBundle\ClientFactory;
44

5-
use Http\Client\Plugin\Plugin;
6-
use Http\Client\Plugin\PluginClient;
5+
use Http\Client\Common\Plugin;
6+
use Http\Client\Common\PluginClient;
77

88
/**
99
* This factory creates a PluginClient.

Collector/MessageJournal.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
namespace Http\HttplugBundle\Collector;
44

55
use Http\Client\Exception;
6-
use Http\Client\Plugin\Journal;
6+
use Http\Client\Common\Plugin\Journal;
77
use Http\Message\Formatter;
88
use Http\Message\Formatter\SimpleFormatter;
99
use Psr\Http\Message\RequestInterface;

DependencyInjection/HttplugExtension.php

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@
22

33
namespace Http\HttplugBundle\DependencyInjection;
44

5-
use Http\Client\Plugin\AuthenticationPlugin;
6-
use Http\Client\Plugin\PluginClient;
5+
use Http\Client\Common\Plugin\AuthenticationPlugin;
6+
use Http\Client\Common\Plugin\CachePlugin;
7+
use Http\Client\Common\Plugin\LoggerPlugin;
8+
use Http\Client\Common\Plugin\StopwatchPlugin;
9+
use Http\Client\Common\PluginClient;
710
use Http\HttplugBundle\ClientFactory\DummyClient;
811
use Http\Message\Authentication\BasicAuth;
912
use Http\Message\Authentication\Bearer;
@@ -119,6 +122,7 @@ private function configurePlugins(ContainerBuilder $container, array $config)
119122

120123
foreach ($config as $name => $pluginConfig) {
121124
$pluginId = 'httplug.plugin.'.$name;
125+
122126
if ($pluginConfig['enabled']) {
123127
$def = $container->getDefinition($pluginId);
124128
$this->configurePluginByName($name, $def, $pluginConfig);
@@ -137,6 +141,10 @@ private function configurePluginByName($name, Definition $definition, array $con
137141
{
138142
switch ($name) {
139143
case 'cache':
144+
// To preserve BC, we check the existence of the new plugin class and use it if available
145+
if (class_exists(CachePlugin::class)) {
146+
$definition->setClass(CachePlugin::class);
147+
}
140148
$definition
141149
->replaceArgument(0, new Reference($config['cache_pool']))
142150
->replaceArgument(1, new Reference($config['stream_factory']))
@@ -152,6 +160,10 @@ private function configurePluginByName($name, Definition $definition, array $con
152160
$definition->replaceArgument(0, new Reference($config['journal']));
153161
break;
154162
case 'logger':
163+
// To preserve BC, we check the existence of the new plugin class and use it if available
164+
if (class_exists(LogggerPlugin::class)) {
165+
$definition->setClass(LogggerPlugin::class);
166+
}
155167
$definition->replaceArgument(0, new Reference($config['logger']));
156168
if (!empty($config['formatter'])) {
157169
$definition->replaceArgument(1, new Reference($config['formatter']));
@@ -166,6 +178,10 @@ private function configurePluginByName($name, Definition $definition, array $con
166178
$definition->addArgument($config['retry']);
167179
break;
168180
case 'stopwatch':
181+
// To preserve BC, we check the existence of the new plugin class and use it if available
182+
if (class_exists(StopwatchPlugin::class)) {
183+
$definition->setClass(StopwatchPlugin::class);
184+
}
169185
$definition->replaceArgument(0, new Reference($config['stopwatch']));
170186
break;
171187
}

Resources/config/data-collector.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<argument>null</argument>
1111
</service>
1212

13-
<service id="httplug.collector.history_plugin" class="Http\Client\Plugin\HistoryPlugin" public="false">
13+
<service id="httplug.collector.history_plugin" class="Http\Client\Common\Plugin\HistoryPlugin" public="false">
1414
<argument type="service" id="httplug.collector.message_journal"/>
1515
</service>
1616
</services>

Resources/config/plugins.xml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,21 +9,21 @@
99
<argument />
1010
<argument />
1111
</service>
12-
<service id="httplug.plugin.content_length" class="Http\Client\Plugin\ContentLengthPlugin" public="false" />
13-
<service id="httplug.plugin.cookie" class="Http\Client\Plugin\CookiePlugin" public="false">
12+
<service id="httplug.plugin.content_length" class="Http\Client\Common\Plugin\ContentLengthPlugin" public="false" />
13+
<service id="httplug.plugin.cookie" class="Http\Client\Common\Plugin\CookiePlugin" public="false">
1414
<argument />
1515
</service>
16-
<service id="httplug.plugin.decoder" class="Http\Client\Plugin\DecoderPlugin" public="false" />
17-
<service id="httplug.plugin.error" class="Http\Client\Plugin\ErrorPlugin" public="false" />
18-
<service id="httplug.plugin.history" class="Http\Client\Plugin\HistoryPlugin" public="false">
16+
<service id="httplug.plugin.decoder" class="Http\Client\Common\Plugin\DecoderPlugin" public="false" />
17+
<service id="httplug.plugin.error" class="Http\Client\Common\Plugin\ErrorPlugin" public="false" />
18+
<service id="httplug.plugin.history" class="Http\Client\Common\Plugin\HistoryPlugin" public="false">
1919
<argument />
2020
</service>
2121
<service id="httplug.plugin.logger" class="Http\Client\Plugin\LoggerPlugin" public="false">
2222
<argument />
2323
<argument>null</argument>
2424
</service>
25-
<service id="httplug.plugin.redirect" class="Http\Client\Plugin\RedirectPlugin" public="false" />
26-
<service id="httplug.plugin.retry" class="Http\Client\Plugin\RetryPlugin" public="false" />
25+
<service id="httplug.plugin.redirect" class="Http\Client\Common\Plugin\RedirectPlugin" public="false" />
26+
<service id="httplug.plugin.retry" class="Http\Client\Common\Plugin\RetryPlugin" public="false" />
2727
<service id="httplug.plugin.stopwatch" class="Http\Client\Plugin\StopwatchPlugin" public="false">
2828
<argument />
2929
</service>

composer.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@
1919
"php": ">=5.5",
2020
"php-http/client-implementation": "^1.0",
2121
"php-http/message-factory": "^1.0.2",
22-
"php-http/plugins": "^1.0",
22+
"php-http/client-common": "^1.1",
23+
"php-http/plugins": "^1.1",
2324
"symfony/options-resolver": "^2.7|^3.0",
2425
"symfony/framework-bundle": "^2.7|^3.0"
2526
},

0 commit comments

Comments
 (0)