diff options
Diffstat (limited to 'vendor/OAuth/Common/Http/Uri')
-rwxr-xr-x | vendor/OAuth/Common/Http/Uri/Uri.php | 408 | ||||
-rwxr-xr-x | vendor/OAuth/Common/Http/Uri/UriFactory.php | 168 | ||||
-rwxr-xr-x | vendor/OAuth/Common/Http/Uri/UriFactoryInterface.php | 42 | ||||
-rwxr-xr-x | vendor/OAuth/Common/Http/Uri/UriInterface.php | 133 |
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(); -} |