# decalog/4.4.0/includes/libraries/http/discovery/HttpClientDiscovery.php

DecaLog, version 4.4.0. 35 lines.

- Page: https://pluginprobe.com/plugins/decalog/4.4.0/code/includes/libraries/http/discovery/HttpClientDiscovery.php
- Raw: https://pluginprobe.com/plugins/decalog/4.4.0/raw/includes/libraries/http/discovery/HttpClientDiscovery.php
- Modified: 2024-05-13T07:42:54+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/decalog/4.4.0/code/includes/libraries/http/discovery/HttpClientDiscovery.php#L10-L20`.

```php
<?php

namespace Http\Discovery;

use Http\Client\HttpClient;
use Http\Discovery\Exception\DiscoveryFailedException;

/**
 * Finds an HTTP Client.
 *
 * @author Márk Sági-Kazár <mark.sagikazar@gmail.com>
 *
 * @deprecated This will be removed in 2.0. Consider using Psr18ClientDiscovery.
 */
final class HttpClientDiscovery extends ClassDiscovery
{
    /**
     * Finds an HTTP Client.
     *
     * @return HttpClient
     *
     * @throws Exception\NotFoundException
     */
    public static function find()
    {
        try {
            $client = static::findOneByType(HttpClient::class);
        } catch (DiscoveryFailedException $e) {
            throw new NotFoundException('No HTTPlug clients found. Make sure to install a package providing "php-http/client-implementation". Example: "php-http/guzzle6-adapter".', 0, $e);
        }

        return static::instantiateClass($client);
    }
}

```
