mirror of
https://0xacab.org/radar/radar-wp.git
synced 2025-04-20 23:06:31 +02:00
Initial import.
This commit is contained in:
commit
86383280c9
428 changed files with 68738 additions and 0 deletions
121
vendor/guzzle/http/Guzzle/Http/Message/Header/CacheControl.php
vendored
Normal file
121
vendor/guzzle/http/Guzzle/Http/Message/Header/CacheControl.php
vendored
Normal file
|
@ -0,0 +1,121 @@
|
|||
<?php
|
||||
|
||||
namespace Guzzle\Http\Message\Header;
|
||||
|
||||
use Guzzle\Http\Message\Header;
|
||||
|
||||
/**
|
||||
* Provides helpful functionality for Cache-Control headers
|
||||
*/
|
||||
class CacheControl extends Header
|
||||
{
|
||||
/** @var array */
|
||||
protected $directives;
|
||||
|
||||
public function add($value)
|
||||
{
|
||||
parent::add($value);
|
||||
$this->directives = null;
|
||||
}
|
||||
|
||||
public function removeValue($searchValue)
|
||||
{
|
||||
parent::removeValue($searchValue);
|
||||
$this->directives = null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a specific cache control directive exists
|
||||
*
|
||||
* @param string $param Directive to retrieve
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function hasDirective($param)
|
||||
{
|
||||
$directives = $this->getDirectives();
|
||||
|
||||
return isset($directives[$param]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a specific cache control directive
|
||||
*
|
||||
* @param string $param Directive to retrieve
|
||||
*
|
||||
* @return string|bool|null
|
||||
*/
|
||||
public function getDirective($param)
|
||||
{
|
||||
$directives = $this->getDirectives();
|
||||
|
||||
return isset($directives[$param]) ? $directives[$param] : null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a cache control directive
|
||||
*
|
||||
* @param string $param Directive to add
|
||||
* @param string $value Value to set
|
||||
*
|
||||
* @return self
|
||||
*/
|
||||
public function addDirective($param, $value)
|
||||
{
|
||||
$directives = $this->getDirectives();
|
||||
$directives[$param] = $value;
|
||||
$this->updateFromDirectives($directives);
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove a cache control directive by name
|
||||
*
|
||||
* @param string $param Directive to remove
|
||||
*
|
||||
* @return self
|
||||
*/
|
||||
public function removeDirective($param)
|
||||
{
|
||||
$directives = $this->getDirectives();
|
||||
unset($directives[$param]);
|
||||
$this->updateFromDirectives($directives);
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get an associative array of cache control directives
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getDirectives()
|
||||
{
|
||||
if ($this->directives === null) {
|
||||
$this->directives = array();
|
||||
foreach ($this->parseParams() as $collection) {
|
||||
foreach ($collection as $key => $value) {
|
||||
$this->directives[$key] = $value === '' ? true : $value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $this->directives;
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates the header value based on the parsed directives
|
||||
*
|
||||
* @param array $directives Array of cache control directives
|
||||
*/
|
||||
protected function updateFromDirectives(array $directives)
|
||||
{
|
||||
$this->directives = $directives;
|
||||
$this->values = array();
|
||||
|
||||
foreach ($directives as $key => $value) {
|
||||
$this->values[] = $value === true ? $key : "{$key}={$value}";
|
||||
}
|
||||
}
|
||||
}
|
108
vendor/guzzle/http/Guzzle/Http/Message/Header/HeaderCollection.php
vendored
Normal file
108
vendor/guzzle/http/Guzzle/Http/Message/Header/HeaderCollection.php
vendored
Normal file
|
@ -0,0 +1,108 @@
|
|||
<?php
|
||||
|
||||
namespace Guzzle\Http\Message\Header;
|
||||
|
||||
use Guzzle\Common\ToArrayInterface;
|
||||
|
||||
/**
|
||||
* Provides a case-insensitive collection of headers
|
||||
*/
|
||||
class HeaderCollection implements \IteratorAggregate, \Countable, \ArrayAccess, ToArrayInterface
|
||||
{
|
||||
/** @var array */
|
||||
protected $headers;
|
||||
|
||||
public function __construct($headers = array())
|
||||
{
|
||||
$this->headers = $headers;
|
||||
}
|
||||
|
||||
public function __clone()
|
||||
{
|
||||
foreach ($this->headers as &$header) {
|
||||
$header = clone $header;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Clears the header collection
|
||||
*/
|
||||
public function clear()
|
||||
{
|
||||
$this->headers = array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Set a header on the collection
|
||||
*
|
||||
* @param HeaderInterface $header Header to add
|
||||
*
|
||||
* @return self
|
||||
*/
|
||||
public function add(HeaderInterface $header)
|
||||
{
|
||||
$this->headers[strtolower($header->getName())] = $header;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get an array of header objects
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getAll()
|
||||
{
|
||||
return $this->headers;
|
||||
}
|
||||
|
||||
/**
|
||||
* Alias of offsetGet
|
||||
*/
|
||||
public function get($key)
|
||||
{
|
||||
return $this->offsetGet($key);
|
||||
}
|
||||
|
||||
public function count()
|
||||
{
|
||||
return count($this->headers);
|
||||
}
|
||||
|
||||
public function offsetExists($offset)
|
||||
{
|
||||
return isset($this->headers[strtolower($offset)]);
|
||||
}
|
||||
|
||||
public function offsetGet($offset)
|
||||
{
|
||||
$l = strtolower($offset);
|
||||
|
||||
return isset($this->headers[$l]) ? $this->headers[$l] : null;
|
||||
}
|
||||
|
||||
public function offsetSet($offset, $value)
|
||||
{
|
||||
$this->add($value);
|
||||
}
|
||||
|
||||
public function offsetUnset($offset)
|
||||
{
|
||||
unset($this->headers[strtolower($offset)]);
|
||||
}
|
||||
|
||||
public function getIterator()
|
||||
{
|
||||
return new \ArrayIterator($this->headers);
|
||||
}
|
||||
|
||||
public function toArray()
|
||||
{
|
||||
$result = array();
|
||||
foreach ($this->headers as $header) {
|
||||
$result[$header->getName()] = $header->toArray();
|
||||
}
|
||||
|
||||
return $result;
|
||||
}
|
||||
}
|
26
vendor/guzzle/http/Guzzle/Http/Message/Header/HeaderFactory.php
vendored
Normal file
26
vendor/guzzle/http/Guzzle/Http/Message/Header/HeaderFactory.php
vendored
Normal file
|
@ -0,0 +1,26 @@
|
|||
<?php
|
||||
|
||||
namespace Guzzle\Http\Message\Header;
|
||||
|
||||
use Guzzle\Http\Message\Header;
|
||||
|
||||
/**
|
||||
* Default header factory implementation
|
||||
*/
|
||||
class HeaderFactory implements HeaderFactoryInterface
|
||||
{
|
||||
/** @var array */
|
||||
protected $mapping = array(
|
||||
'cache-control' => 'Guzzle\Http\Message\Header\CacheControl',
|
||||
'link' => 'Guzzle\Http\Message\Header\Link',
|
||||
);
|
||||
|
||||
public function createHeader($header, $value = null)
|
||||
{
|
||||
$lowercase = strtolower($header);
|
||||
|
||||
return isset($this->mapping[$lowercase])
|
||||
? new $this->mapping[$lowercase]($header, $value)
|
||||
: new Header($header, $value);
|
||||
}
|
||||
}
|
19
vendor/guzzle/http/Guzzle/Http/Message/Header/HeaderFactoryInterface.php
vendored
Normal file
19
vendor/guzzle/http/Guzzle/Http/Message/Header/HeaderFactoryInterface.php
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
<?php
|
||||
|
||||
namespace Guzzle\Http\Message\Header;
|
||||
|
||||
/**
|
||||
* Interface for creating headers
|
||||
*/
|
||||
interface HeaderFactoryInterface
|
||||
{
|
||||
/**
|
||||
* Create a header from a header name and a single value
|
||||
*
|
||||
* @param string $header Name of the header to create
|
||||
* @param string $value Value to set on the header
|
||||
*
|
||||
* @return HeaderInterface
|
||||
*/
|
||||
public function createHeader($header, $value = null);
|
||||
}
|
83
vendor/guzzle/http/Guzzle/Http/Message/Header/HeaderInterface.php
vendored
Normal file
83
vendor/guzzle/http/Guzzle/Http/Message/Header/HeaderInterface.php
vendored
Normal file
|
@ -0,0 +1,83 @@
|
|||
<?php
|
||||
|
||||
namespace Guzzle\Http\Message\Header;
|
||||
|
||||
use Guzzle\Common\ToArrayInterface;
|
||||
|
||||
interface HeaderInterface extends ToArrayInterface, \Countable, \IteratorAggregate
|
||||
{
|
||||
/**
|
||||
* Convert the header to a string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function __toString();
|
||||
|
||||
/**
|
||||
* Add a value to the list of header values
|
||||
*
|
||||
* @param string $value Value to add to the header
|
||||
*
|
||||
* @return self
|
||||
*/
|
||||
public function add($value);
|
||||
|
||||
/**
|
||||
* Get the name of the header
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getName();
|
||||
|
||||
/**
|
||||
* Change the name of the header
|
||||
*
|
||||
* @param string $name Name to change to
|
||||
*
|
||||
* @return self
|
||||
*/
|
||||
public function setName($name);
|
||||
|
||||
/**
|
||||
* Change the glue used to implode the values
|
||||
*
|
||||
* @param string $glue Glue used to implode multiple values
|
||||
*
|
||||
* @return self
|
||||
*/
|
||||
public function setGlue($glue);
|
||||
|
||||
/**
|
||||
* Get the glue used to implode multiple values into a string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getGlue();
|
||||
|
||||
/**
|
||||
* Check if the collection of headers has a particular value
|
||||
*
|
||||
* @param string $searchValue Value to search for
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function hasValue($searchValue);
|
||||
|
||||
/**
|
||||
* Remove a specific value from the header
|
||||
*
|
||||
* @param string $searchValue Value to remove
|
||||
*
|
||||
* @return self
|
||||
*/
|
||||
public function removeValue($searchValue);
|
||||
|
||||
/**
|
||||
* Parse a header containing ";" separated data into an array of associative arrays representing the header
|
||||
* key value pair data of the header. When a parameter does not contain a value, but just contains a key, this
|
||||
* function will inject a key with a '' string value.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function parseParams();
|
||||
}
|
93
vendor/guzzle/http/Guzzle/Http/Message/Header/Link.php
vendored
Normal file
93
vendor/guzzle/http/Guzzle/Http/Message/Header/Link.php
vendored
Normal file
|
@ -0,0 +1,93 @@
|
|||
<?php
|
||||
|
||||
namespace Guzzle\Http\Message\Header;
|
||||
|
||||
use Guzzle\Http\Message\Header;
|
||||
|
||||
/**
|
||||
* Provides helpful functionality for link headers
|
||||
*/
|
||||
class Link extends Header
|
||||
{
|
||||
/**
|
||||
* Add a link to the header
|
||||
*
|
||||
* @param string $url Link URL
|
||||
* @param string $rel Link rel
|
||||
* @param array $params Other link parameters
|
||||
*
|
||||
* @return self
|
||||
*/
|
||||
public function addLink($url, $rel, array $params = array())
|
||||
{
|
||||
$values = array("<{$url}>", "rel=\"{$rel}\"");
|
||||
|
||||
foreach ($params as $k => $v) {
|
||||
$values[] = "{$k}=\"{$v}\"";
|
||||
}
|
||||
|
||||
return $this->add(implode('; ', $values));
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a specific link exists for a given rel attribute
|
||||
*
|
||||
* @param string $rel rel value
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function hasLink($rel)
|
||||
{
|
||||
return $this->getLink($rel) !== null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a specific link for a given rel attribute
|
||||
*
|
||||
* @param string $rel Rel value
|
||||
*
|
||||
* @return array|null
|
||||
*/
|
||||
public function getLink($rel)
|
||||
{
|
||||
foreach ($this->getLinks() as $link) {
|
||||
if (isset($link['rel']) && $link['rel'] == $rel) {
|
||||
return $link;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get an associative array of links
|
||||
*
|
||||
* For example:
|
||||
* Link: <http:/.../front.jpeg>; rel=front; type="image/jpeg", <http://.../back.jpeg>; rel=back; type="image/jpeg"
|
||||
*
|
||||
* <code>
|
||||
* var_export($response->getLinks());
|
||||
* array(
|
||||
* array(
|
||||
* 'url' => 'http:/.../front.jpeg',
|
||||
* 'rel' => 'back',
|
||||
* 'type' => 'image/jpeg',
|
||||
* )
|
||||
* )
|
||||
* </code>
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getLinks()
|
||||
{
|
||||
$links = $this->parseParams();
|
||||
|
||||
foreach ($links as &$link) {
|
||||
$key = key($link);
|
||||
unset($link[$key]);
|
||||
$link['url'] = trim($key, '<> ');
|
||||
}
|
||||
|
||||
return $links;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue