diff options
Diffstat (limited to 'inc/mailgun/php-http/message/src/UriFactory/SlimUriFactory.php')
| -rw-r--r-- | inc/mailgun/php-http/message/src/UriFactory/SlimUriFactory.php | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/inc/mailgun/php-http/message/src/UriFactory/SlimUriFactory.php b/inc/mailgun/php-http/message/src/UriFactory/SlimUriFactory.php new file mode 100644 index 0000000..c013d54 --- /dev/null +++ b/inc/mailgun/php-http/message/src/UriFactory/SlimUriFactory.php @@ -0,0 +1,31 @@ +<?php + +namespace Http\Message\UriFactory; + +use Http\Message\UriFactory; +use Psr\Http\Message\UriInterface; +use Slim\Http\Uri; + +/** + * Creates Slim 3 URI. + * + * @author Mika Tuupola <tuupola@appelsiini.net> + */ +final class SlimUriFactory implements UriFactory +{ + /** + * {@inheritdoc} + */ + public function createUri($uri) + { + if ($uri instanceof UriInterface) { + return $uri; + } + + if (is_string($uri)) { + return Uri::createFromString($uri); + } + + throw new \InvalidArgumentException('URI must be a string or UriInterface'); + } +} |
