diff options
| author | Carson Fleming <cflems@cflems.net> | 2017-03-02 22:49:24 -0500 |
|---|---|---|
| committer | Carson Fleming <cflems@cflems.net> | 2017-03-02 22:49:24 -0500 |
| commit | b76e2ff898b23745d4c9aaee49eeb7d88f2896ab (patch) | |
| tree | 9b794be8db310a575d70165d9ebde0a183b61b01 /inc/mailgun/php-http/message/src/StreamFactory/SlimStreamFactory.php | |
| parent | bfcc9f7a7656a2db0c905b3c13114664f00f6c37 (diff) | |
| download | bulletin-b76e2ff898b23745d4c9aaee49eeb7d88f2896ab.tar.gz | |
Updated mailgun plugin
Diffstat (limited to 'inc/mailgun/php-http/message/src/StreamFactory/SlimStreamFactory.php')
| -rw-r--r-- | inc/mailgun/php-http/message/src/StreamFactory/SlimStreamFactory.php | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/inc/mailgun/php-http/message/src/StreamFactory/SlimStreamFactory.php b/inc/mailgun/php-http/message/src/StreamFactory/SlimStreamFactory.php new file mode 100644 index 0000000..efcadc4 --- /dev/null +++ b/inc/mailgun/php-http/message/src/StreamFactory/SlimStreamFactory.php @@ -0,0 +1,37 @@ +<?php + +namespace Http\Message\StreamFactory; + +use Http\Message\StreamFactory; +use Psr\Http\Message\StreamInterface; +use Slim\Http\Stream; + +/** + * Creates Slim 3 streams. + * + * @author Mika Tuupola <tuupola@appelsiini.net> + */ +final class SlimStreamFactory implements StreamFactory +{ + /** + * {@inheritdoc} + */ + public function createStream($body = null) + { + if ($body instanceof StreamInterface) { + return $body; + } + + if (is_resource($body)) { + return new Stream($body); + } + + $resource = fopen('php://memory', 'r+'); + $stream = new Stream($resource); + if (null !== $body && '' !== $body) { + $stream->write((string) $body); + } + + return $stream; + } +} |
