Open Journal Systems  3.3.0
Guzzle\Plugin\Cache\DefaultRevalidation Class Reference
Inheritance diagram for Guzzle\Plugin\Cache\DefaultRevalidation:
Guzzle\Plugin\Cache\RevalidationInterface Guzzle\Plugin\Cache\DenyRevalidation Guzzle\Plugin\Cache\SkipRevalidation

Public Member Functions

 __construct (CacheStorageInterface $cache, CanCacheStrategyInterface $canCache=null)
 
 revalidate (RequestInterface $request, Response $response)
 
 shouldRevalidate (RequestInterface $request, Response $response)
 

Protected Member Functions

 createRevalidationRequest (RequestInterface $request, Response $response)
 
 handle200Response (RequestInterface $request, Response $validateResponse)
 
 handle304Response (RequestInterface $request, Response $validateResponse, Response $response)
 
 handleBadResponse (BadResponseException $e)
 

Protected Attributes

 $canCache
 
 $storage
 

Detailed Description

Default revalidation strategy

Definition at line 12 of file DefaultRevalidation.php.

Constructor & Destructor Documentation

◆ __construct()

Guzzle\Plugin\Cache\DefaultRevalidation::__construct ( CacheStorageInterface  $cache,
CanCacheStrategyInterface  $canCache = null 
)
Parameters
CacheStorageInterface$cacheCache storage
CanCacheStrategyInterface$canCacheDetermines if a message can be cached

Definition at line 30 of file DefaultRevalidation.php.

References Guzzle\Plugin\Cache\DefaultRevalidation\$canCache.

Member Function Documentation

◆ createRevalidationRequest()

Guzzle\Plugin\Cache\DefaultRevalidation::createRevalidationRequest ( RequestInterface  $request,
Response  $response 
)
protected

Creates a request to use for revalidation

Parameters
RequestInterface$requestRequest
Response$responseResponse to revalidate
Returns
RequestInterface returns a revalidation request

Definition at line 101 of file DefaultRevalidation.php.

References Guzzle\Http\Message\MessageInterface\removeHeader().

Referenced by Guzzle\Plugin\Cache\DefaultRevalidation\revalidate().

◆ handle200Response()

Guzzle\Plugin\Cache\DefaultRevalidation::handle200Response ( RequestInterface  $request,
Response  $validateResponse 
)
protected

Handles a 200 response response from revalidating. The server does not support validation, so use this response.

Parameters
RequestInterface$requestRequest that was sent
Response$validateResponseResponse received
Returns
bool Returns true if valid, false if invalid

Definition at line 135 of file DefaultRevalidation.php.

References Guzzle\Http\Message\RequestInterface\setResponse().

Referenced by Guzzle\Plugin\Cache\DefaultRevalidation\revalidate().

◆ handle304Response()

Guzzle\Plugin\Cache\DefaultRevalidation::handle304Response ( RequestInterface  $request,
Response  $validateResponse,
Response  $response 
)
protected

Handle a 304 response and ensure that it is still valid

Parameters
RequestInterface$requestRequest that was sent
Response$validateResponseResponse received
Response$responseOriginal cached response
Returns
bool Returns true if valid, false if invalid

Definition at line 154 of file DefaultRevalidation.php.

References Guzzle\Http\Message\Response\getEtag(), Guzzle\Http\Message\AbstractMessage\getHeader(), and Guzzle\Http\Message\AbstractMessage\hasHeader().

Referenced by Guzzle\Plugin\Cache\DefaultRevalidation\revalidate().

◆ handleBadResponse()

Guzzle\Plugin\Cache\DefaultRevalidation::handleBadResponse ( BadResponseException  $e)
protected

Handles a bad response when attempting to revalidate

Parameters
BadResponseException$eException encountered
Exceptions
BadResponseException

Definition at line 83 of file DefaultRevalidation.php.

References Guzzle\Http\Exception\RequestException\getRequest(), and Guzzle\Http\Exception\BadResponseException\getResponse().

Referenced by Guzzle\Plugin\Cache\DefaultRevalidation\revalidate().

◆ revalidate()

Guzzle\Plugin\Cache\DefaultRevalidation::revalidate ( RequestInterface  $request,
Response  $response 
)

Performs a cache revalidation

Parameters
RequestInterface$requestRequest to revalidate
Response$responseResponse that was received
Returns
bool Returns true if the request can be cached

Implements Guzzle\Plugin\Cache\RevalidationInterface.

Reimplemented in Guzzle\Plugin\Cache\DenyRevalidation, and Guzzle\Plugin\Cache\SkipRevalidation.

Definition at line 36 of file DefaultRevalidation.php.

References Guzzle\Plugin\Cache\DefaultRevalidation\createRevalidationRequest(), Guzzle\Plugin\Cache\DefaultRevalidation\handle200Response(), Guzzle\Plugin\Cache\DefaultRevalidation\handle304Response(), and Guzzle\Plugin\Cache\DefaultRevalidation\handleBadResponse().

◆ shouldRevalidate()

Guzzle\Plugin\Cache\DefaultRevalidation::shouldRevalidate ( RequestInterface  $request,
Response  $response 
)

Returns true if the response should be revalidated

Parameters
RequestInterface$requestRequest to check
Response$responseResponse to check
Returns
bool

Implements Guzzle\Plugin\Cache\RevalidationInterface.

Definition at line 55 of file DefaultRevalidation.php.

References Guzzle\Http\Message\RequestInterface\GET, Guzzle\Http\Message\MessageInterface\getHeader(), and Guzzle\Http\Message\RequestInterface\getMethod().

Field Documentation

◆ $canCache

CanCacheStrategyInterface Guzzle\Plugin\Cache\DefaultRevalidation::$canCache
protected

◆ $storage

CacheStorageInterface Guzzle\Plugin\Cache\DefaultRevalidation::$storage
protected

Cache object storing cache data

Definition at line 18 of file DefaultRevalidation.php.


The documentation for this class was generated from the following file: