summaryrefslogtreecommitdiff
path: root/inc/mailgun/php-http/discovery/src/StreamFactoryDiscovery.php
diff options
context:
space:
mode:
authorCarson Fleming <cflems@cflems.net>2017-03-02 22:49:24 -0500
committerCarson Fleming <cflems@cflems.net>2017-03-02 22:49:24 -0500
commitb76e2ff898b23745d4c9aaee49eeb7d88f2896ab (patch)
tree9b794be8db310a575d70165d9ebde0a183b61b01 /inc/mailgun/php-http/discovery/src/StreamFactoryDiscovery.php
parentbfcc9f7a7656a2db0c905b3c13114664f00f6c37 (diff)
downloadbulletin-b76e2ff898b23745d4c9aaee49eeb7d88f2896ab.tar.gz
Updated mailgun plugin
Diffstat (limited to 'inc/mailgun/php-http/discovery/src/StreamFactoryDiscovery.php')
-rw-r--r--inc/mailgun/php-http/discovery/src/StreamFactoryDiscovery.php36
1 files changed, 36 insertions, 0 deletions
diff --git a/inc/mailgun/php-http/discovery/src/StreamFactoryDiscovery.php b/inc/mailgun/php-http/discovery/src/StreamFactoryDiscovery.php
new file mode 100644
index 0000000..7bcc8ce
--- /dev/null
+++ b/inc/mailgun/php-http/discovery/src/StreamFactoryDiscovery.php
@@ -0,0 +1,36 @@
+<?php
+
+namespace Http\Discovery;
+
+use Http\Discovery\Exception\DiscoveryFailedException;
+use Http\Message\StreamFactory;
+
+/**
+ * Finds a Stream Factory.
+ *
+ * @author Михаил Красильников <m.krasilnikov@yandex.ru>
+ */
+final class StreamFactoryDiscovery extends ClassDiscovery
+{
+ /**
+ * Finds a Stream Factory.
+ *
+ * @return StreamFactory
+ *
+ * @throws Exception\NotFoundException
+ */
+ public static function find()
+ {
+ try {
+ $streamFactory = static::findOneByType(StreamFactory::class);
+ } catch (DiscoveryFailedException $e) {
+ throw new NotFoundException(
+ 'No stream factories found. To use Guzzle, Diactoros or Slim Framework factories install php-http/message and the chosen message implementation.',
+ 0,
+ $e
+ );
+ }
+
+ return static::instantiateClass($streamFactory);
+ }
+}