summaryrefslogtreecommitdiff
path: root/vendor/OAuth/Common/Http/Uri
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/OAuth/Common/Http/Uri')
-rwxr-xr-xvendor/OAuth/Common/Http/Uri/Uri.php408
-rwxr-xr-xvendor/OAuth/Common/Http/Uri/UriFactory.php168
-rwxr-xr-xvendor/OAuth/Common/Http/Uri/UriFactoryInterface.php42
-rwxr-xr-xvendor/OAuth/Common/Http/Uri/UriInterface.php133
4 files changed, 0 insertions, 751 deletions
diff --git a/vendor/OAuth/Common/Http/Uri/Uri.php b/vendor/OAuth/Common/Http/Uri/Uri.php
deleted file mode 100755
index c5114937..00000000
--- a/vendor/OAuth/Common/Http/Uri/Uri.php
+++ /dev/null
@@ -1,408 +0,0 @@
-<?php
-
-namespace OAuth\Common\Http\Uri;
-
-use InvalidArgumentException;
-
-/**
- * Standards-compliant URI class.
- */
-class Uri implements UriInterface
-{
- /**
- * @var string
- */
- private $scheme = 'http';
-
- /**
- * @var string
- */
- private $userInfo = '';
-
- /**
- * @var string
- */
- private $rawUserInfo = '';
-
- /**
- * @var string
- */
- private $host;
-
- /**
- * @var int
- */
- private $port = 80;
-
- /**
- * @var string
- */
- private $path = '/';
-
- /**
- * @var string
- */
- private $query = '';
-
- /**
- * @var string
- */
- private $fragment = '';
-
- /**
- * @var bool
- */
- private $explicitPortSpecified = false;
-
- /**
- * @var bool
- */
- private $explicitTrailingHostSlash = false;
-
- /**
- * @param string $uri
- */
- public function __construct($uri = null)
- {
- if (null !== $uri) {
- $this->parseUri($uri);
- }
- }
-
- /**
- * @param string $uri
- *
- * @throws \InvalidArgumentException
- */
- protected function parseUri($uri)
- {
- if (false === ($uriParts = parse_url($uri))) {
- // congratulations if you've managed to get parse_url to fail,
- // it seems to always return some semblance of a parsed url no matter what
- throw new InvalidArgumentException("Invalid URI: $uri");
- }
-
- if (!isset($uriParts['scheme'])) {
- throw new InvalidArgumentException('Invalid URI: http|https scheme required');
- }
-
- $this->scheme = $uriParts['scheme'];
- $this->host = $uriParts['host'];
-
- if (isset($uriParts['port'])) {
- $this->port = $uriParts['port'];
- $this->explicitPortSpecified = true;
- } else {
- $this->port = strcmp('https', $uriParts['scheme']) ? 80 : 443;
- $this->explicitPortSpecified = false;
- }
-
- if (isset($uriParts['path'])) {
- $this->path = $uriParts['path'];
- if ('/' === $uriParts['path']) {
- $this->explicitTrailingHostSlash = true;
- }
- } else {
- $this->path = '/';
- }
-
- $this->query = isset($uriParts['query']) ? $uriParts['query'] : '';
- $this->fragment = isset($uriParts['fragment']) ? $uriParts['fragment'] : '';
-
- $userInfo = '';
- if (!empty($uriParts['user'])) {
- $userInfo .= $uriParts['user'];
- }
- if ($userInfo && !empty($uriParts['pass'])) {
- $userInfo .= ':' . $uriParts['pass'];
- }
-
- $this->setUserInfo($userInfo);
- }
-
- /**
- * @param string $rawUserInfo
- *
- * @return string
- */
- protected function protectUserInfo($rawUserInfo)
- {
- $colonPos = strpos($rawUserInfo, ':');
-
- // rfc3986-3.2.1 | http://tools.ietf.org/html/rfc3986#section-3.2
- // "Applications should not render as clear text any data
- // after the first colon (":") character found within a userinfo
- // subcomponent unless the data after the colon is the empty string
- // (indicating no password)"
- if ($colonPos !== false && strlen($rawUserInfo)-1 > $colonPos) {
- return substr($rawUserInfo, 0, $colonPos) . ':********';
- } else {
- return $rawUserInfo;
- }
- }
-
- /**
- * @return string
- */
- public function getScheme()
- {
- return $this->scheme;
- }
-
- /**
- * @return string
- */
- public function getUserInfo()
- {
- return $this->userInfo;
- }
-
- /**
- * @return string
- */
- public function getRawUserInfo()
- {
- return $this->rawUserInfo;
- }
-
- /**
- * @return string
- */
- public function getHost()
- {
- return $this->host;
- }
-
- /**
- * @return int
- */
- public function getPort()
- {
- return $this->port;
- }
-
- /**
- * @return string
- */
- public function getPath()
- {
- return $this->path;
- }
-
- /**
- * @return string
- */
- public function getQuery()
- {
- return $this->query;
- }
-
- /**
- * @return string
- */
- public function getFragment()
- {
- return $this->fragment;
- }
-
- /**
- * Uses protected user info by default as per rfc3986-3.2.1
- * Uri::getRawAuthority() is available if plain-text password information is desirable.
- *
- * @return string
- */
- public function getAuthority()
- {
- $authority = $this->userInfo ? $this->userInfo.'@' : '';
- $authority .= $this->host;
-
- if ($this->explicitPortSpecified) {
- $authority .= ":{$this->port}";
- }
-
- return $authority;
- }
-
- /**
- * @return string
- */
- public function getRawAuthority()
- {
- $authority = $this->rawUserInfo ? $this->rawUserInfo.'@' : '';
- $authority .= $this->host;
-
- if ($this->explicitPortSpecified) {
- $authority .= ":{$this->port}";
- }
-
- return $authority;
- }
-
- /**
- * @return string
- */
- public function getAbsoluteUri()
- {
- $uri = $this->scheme . '://' . $this->getRawAuthority();
-
- if ('/' === $this->path) {
- $uri .= $this->explicitTrailingHostSlash ? '/' : '';
- } else {
- $uri .= $this->path;
- }
-
- if (!empty($this->query)) {
- $uri .= "?{$this->query}";
- }
-
- if (!empty($this->fragment)) {
- $uri .= "#{$this->fragment}";
- }
-
- return $uri;
- }
-
- /**
- * @return string
- */
- public function getRelativeUri()
- {
- $uri = '';
-
- if ('/' === $this->path) {
- $uri .= $this->explicitTrailingHostSlash ? '/' : '';
- } else {
- $uri .= $this->path;
- }
-
- return $uri;
- }
-
- /**
- * Uses protected user info by default as per rfc3986-3.2.1
- * Uri::getAbsoluteUri() is available if plain-text password information is desirable.
- *
- * @return string
- */
- public function __toString()
- {
- $uri = $this->scheme . '://' . $this->getAuthority();
-
- if ('/' === $this->path) {
- $uri .= $this->explicitTrailingHostSlash ? '/' : '';
- } else {
- $uri .= $this->path;
- }
-
- if (!empty($this->query)) {
- $uri .= "?{$this->query}";
- }
-
- if (!empty($this->fragment)) {
- $uri .= "#{$this->fragment}";
- }
-
- return $uri;
- }
-
- /**
- * @param $path
- */
- public function setPath($path)
- {
- if (empty($path)) {
- $this->path = '/';
- $this->explicitTrailingHostSlash = false;
- } else {
- $this->path = $path;
- if ('/' === $this->path) {
- $this->explicitTrailingHostSlash = true;
- }
- }
- }
-
- /**
- * @param string $query
- */
- public function setQuery($query)
- {
- $this->query = $query;
- }
-
- /**
- * @param string $var
- * @param string $val
- */
- public function addToQuery($var, $val)
- {
- if (strlen($this->query) > 0) {
- $this->query .= '&';
- }
- $this->query .= http_build_query(array($var => $val), '', '&');
- }
-
- /**
- * @param string $fragment
- */
- public function setFragment($fragment)
- {
- $this->fragment = $fragment;
- }
-
- /**
- * @param string $scheme
- */
- public function setScheme($scheme)
- {
- $this->scheme = $scheme;
- }
-
-
- /**
- * @param string $userInfo
- */
- public function setUserInfo($userInfo)
- {
- $this->userInfo = $userInfo ? $this->protectUserInfo($userInfo) : '';
- $this->rawUserInfo = $userInfo;
- }
-
-
- /**
- * @param int $port
- */
- public function setPort($port)
- {
- $this->port = intval($port);
-
- if (('https' === $this->scheme && $this->port === 443) || ('http' === $this->scheme && $this->port === 80)) {
- $this->explicitPortSpecified = false;
- } else {
- $this->explicitPortSpecified = true;
- }
- }
-
- /**
- * @param string $host
- */
- public function setHost($host)
- {
- $this->host = $host;
- }
-
- /**
- * @return bool
- */
- public function hasExplicitTrailingHostSlash()
- {
- return $this->explicitTrailingHostSlash;
- }
-
- /**
- * @return bool
- */
- public function hasExplicitPortSpecified()
- {
- return $this->explicitPortSpecified;
- }
-}
diff --git a/vendor/OAuth/Common/Http/Uri/UriFactory.php b/vendor/OAuth/Common/Http/Uri/UriFactory.php
deleted file mode 100755
index 127aa203..00000000
--- a/vendor/OAuth/Common/Http/Uri/UriFactory.php
+++ /dev/null
@@ -1,168 +0,0 @@
-<?php
-
-namespace OAuth\Common\Http\Uri;
-
-use RuntimeException;
-
-/**
- * Factory class for uniform resource indicators
- */
-class UriFactory implements UriFactoryInterface
-{
- /**
- * Factory method to build a URI from a super-global $_SERVER array.
- *
- * @param array $_server
- *
- * @return UriInterface
- */
- public function createFromSuperGlobalArray(array $_server)
- {
- if ($uri = $this->attemptProxyStyleParse($_server)) {
- return $uri;
- }
-
- $scheme = $this->detectScheme($_server);
- $host = $this->detectHost($_server);
- $port = $this->detectPort($_server);
- $path = $this->detectPath($_server);
- $query = $this->detectQuery($_server);
-
- return $this->createFromParts($scheme, '', $host, $port, $path, $query);
- }
-
- /**
- * @param string $absoluteUri
- *
- * @return UriInterface
- */
- public function createFromAbsolute($absoluteUri)
- {
- return new Uri($absoluteUri);
- }
-
- /**
- * Factory method to build a URI from parts
- *
- * @param string $scheme
- * @param string $userInfo
- * @param string $host
- * @param string $port
- * @param string $path
- * @param string $query
- * @param string $fragment
- *
- * @return UriInterface
- */
- public function createFromParts($scheme, $userInfo, $host, $port, $path = '', $query = '', $fragment = '')
- {
- $uri = new Uri();
- $uri->setScheme($scheme);
- $uri->setUserInfo($userInfo);
- $uri->setHost($host);
- $uri->setPort($port);
- $uri->setPath($path);
- $uri->setQuery($query);
- $uri->setFragment($fragment);
-
- return $uri;
- }
-
- /**
- * @param array $_server
- *
- * @return UriInterface|null
- */
- private function attemptProxyStyleParse($_server)
- {
- // If the raw HTTP request message arrives with a proxy-style absolute URI in the
- // initial request line, the absolute URI is stored in $_SERVER['REQUEST_URI'] and
- // we only need to parse that.
- if (isset($_server['REQUEST_URI']) && parse_url($_server['REQUEST_URI'], PHP_URL_SCHEME)) {
- return new Uri($_server['REQUEST_URI']);
- }
-
- return null;
- }
-
- /**
- * @param array $_server
- *
- * @return string
- *
- * @throws RuntimeException
- */
- private function detectPath($_server)
- {
- if (isset($_server['REQUEST_URI'])) {
- $uri = $_server['REQUEST_URI'];
- } elseif (isset($_server['REDIRECT_URL'])) {
- $uri = $_server['REDIRECT_URL'];
- } else {
- throw new RuntimeException('Could not detect URI path from superglobal');
- }
-
- $queryStr = strpos($uri, '?');
- if ($queryStr !== false) {
- $uri = substr($uri, 0, $queryStr);
- }
-
- return $uri;
- }
-
- /**
- * @param array $_server
- *
- * @return string
- */
- private function detectHost(array $_server)
- {
- $host = isset($_server['HTTP_HOST']) ? $_server['HTTP_HOST'] : '';
-
- if (strstr($host, ':')) {
- $host = parse_url($host, PHP_URL_HOST);
- }
-
- return $host;
- }
-
- /**
- * @param array $_server
- *
- * @return string
- */
- private function detectPort(array $_server)
- {
- return isset($_server['SERVER_PORT']) ? $_server['SERVER_PORT'] : 80;
- }
-
- /**
- * @param array $_server
- *
- * @return string
- */
- private function detectQuery(array $_server)
- {
- return isset($_server['QUERY_STRING']) ? $_server['QUERY_STRING'] : '';
- }
-
- /**
- * Determine URI scheme component from superglobal array
- *
- * When using ISAPI with IIS, the value will be "off" if the request was
- * not made through the HTTPS protocol. As a result, we filter the
- * value to a bool.
- *
- * @param array $_server A super-global $_SERVER array
- *
- * @return string Returns http or https depending on the URI scheme
- */
- private function detectScheme(array $_server)
- {
- if (isset($_server['HTTPS']) && filter_var($_server['HTTPS'], FILTER_VALIDATE_BOOLEAN)) {
- return 'https';
- } else {
- return 'http';
- }
- }
-}
diff --git a/vendor/OAuth/Common/Http/Uri/UriFactoryInterface.php b/vendor/OAuth/Common/Http/Uri/UriFactoryInterface.php
deleted file mode 100755
index 2b157d84..00000000
--- a/vendor/OAuth/Common/Http/Uri/UriFactoryInterface.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-
-namespace OAuth\Common\Http\Uri;
-
-/**
- * Factory interface for uniform resource indicators
- */
-interface UriFactoryInterface
-{
- /**
- * Factory method to build a URI from a super-global $_SERVER array.
- *
- * @param array $_server
- *
- * @return UriInterface
- */
- public function createFromSuperGlobalArray(array $_server);
-
- /**
- * Creates a URI from an absolute URI
- *
- * @param string $absoluteUri
- *
- * @return UriInterface
- */
- public function createFromAbsolute($absoluteUri);
-
- /**
- * Factory method to build a URI from parts
- *
- * @param string $scheme
- * @param string $userInfo
- * @param string $host
- * @param string $port
- * @param string $path
- * @param string $query
- * @param string $fragment
- *
- * @return UriInterface
- */
- public function createFromParts($scheme, $userInfo, $host, $port, $path = '', $query = '', $fragment = '');
-}
diff --git a/vendor/OAuth/Common/Http/Uri/UriInterface.php b/vendor/OAuth/Common/Http/Uri/UriInterface.php
deleted file mode 100755
index 008d4647..00000000
--- a/vendor/OAuth/Common/Http/Uri/UriInterface.php
+++ /dev/null
@@ -1,133 +0,0 @@
-<?php
-
-namespace OAuth\Common\Http\Uri;
-
-interface UriInterface
-{
- /**
- * @return string
- */
- public function getScheme();
-
- /**
- * @param string $scheme
- */
- public function setScheme($scheme);
-
- /**
- * @return string
- */
- public function getHost();
-
- /**
- * @param string $host
- */
- public function setHost($host);
-
- /**
- * @return int
- */
- public function getPort();
-
- /**
- * @param int $port
- */
- public function setPort($port);
-
- /**
- * @return string
- */
- public function getPath();
-
- /**
- * @param string $path
- */
- public function setPath($path);
-
- /**
- * @return string
- */
- public function getQuery();
-
- /**
- * @param string $query
- */
- public function setQuery($query);
-
- /**
- * Adds a param to the query string.
- *
- * @param string $var
- * @param string $val
- */
- public function addToQuery($var, $val);
-
- /**
- * @return string
- */
- public function getFragment();
-
- /**
- * Should return URI user info, masking protected user info data according to rfc3986-3.2.1
- *
- * @return string
- */
- public function getUserInfo();
-
- /**
- * @param string $userInfo
- */
- public function setUserInfo($userInfo);
-
- /**
- * Should return the URI Authority, masking protected user info data according to rfc3986-3.2.1
- *
- * @return string
- */
- public function getAuthority();
-
- /**
- * Should return the URI string, masking protected user info data according to rfc3986-3.2.1
- *
- * @return string the URI string with user protected info masked
- */
- public function __toString();
-
- /**
- * Should return the URI Authority without masking protected user info data
- *
- * @return string
- */
- public function getRawAuthority();
-
- /**
- * Should return the URI user info without masking protected user info data
- *
- * @return string
- */
- public function getRawUserInfo();
-
- /**
- * Build the full URI based on all the properties
- *
- * @return string The full URI without masking user info
- */
- public function getAbsoluteUri();
-
- /**
- * Build the relative URI based on all the properties
- *
- * @return string The relative URI
- */
- public function getRelativeUri();
-
- /**
- * @return bool
- */
- public function hasExplicitTrailingHostSlash();
-
- /**
- * @return bool
- */
- public function hasExplicitPortSpecified();
-}