summaryrefslogtreecommitdiff
path: root/Postman/Postman-Mail/mailgun/vendor/php-http/discovery/src/UriFactoryDiscovery.php
diff options
context:
space:
mode:
Diffstat (limited to 'Postman/Postman-Mail/mailgun/vendor/php-http/discovery/src/UriFactoryDiscovery.php')
-rw-r--r--Postman/Postman-Mail/mailgun/vendor/php-http/discovery/src/UriFactoryDiscovery.php36
1 files changed, 36 insertions, 0 deletions
diff --git a/Postman/Postman-Mail/mailgun/vendor/php-http/discovery/src/UriFactoryDiscovery.php b/Postman/Postman-Mail/mailgun/vendor/php-http/discovery/src/UriFactoryDiscovery.php
new file mode 100644
index 0000000..1eef1e6
--- /dev/null
+++ b/Postman/Postman-Mail/mailgun/vendor/php-http/discovery/src/UriFactoryDiscovery.php
@@ -0,0 +1,36 @@
+<?php
+
+namespace Http\Discovery;
+
+use Http\Discovery\Exception\DiscoveryFailedException;
+use Http\Message\UriFactory;
+
+/**
+ * Finds a URI Factory.
+ *
+ * @author David de Boer <david@ddeboer.nl>
+ */
+final class UriFactoryDiscovery extends ClassDiscovery
+{
+ /**
+ * Finds a URI Factory.
+ *
+ * @return UriFactory
+ *
+ * @throws Exception\NotFoundException
+ */
+ public static function find()
+ {
+ try {
+ $uriFactory = static::findOneByType(UriFactory::class);
+ } catch (DiscoveryFailedException $e) {
+ throw new NotFoundException(
+ 'No uri factories found. To use Guzzle, Diactoros or Slim Framework factories install php-http/message and the chosen message implementation.',
+ 0,
+ $e
+ );
+ }
+
+ return static::instantiateClass($uriFactory);
+ }
+}