class Store implements StoreInterface

Store implements all the logic for storing cache metadata (Request and Response headers).

Methods

__construct(string $root)

Constructor.

cleanup()

Cleanups storage.

bool|string
lock(Request $request)

Tries to lock the cache for a given Request, without blocking.

bool
unlock(Request $request)

Releases the lock for the given Request.

bool
isLocked(Request $request)

Returns whether or not a lock exists.

Response|null
lookup(Request $request)

Locates a cached Response for the Request provided.

string
write(Request $request, Response $response)

Writes a cache entry to the store for the given Request and Response.

invalidate(Request $request)

Invalidates all cache entries that match the request.

bool
purge(string $url)

Purges data for the given URL.

getPath($key)

No description

Details

at line line 38
__construct(string $root)

Constructor.

Parameters

string $root The path to the cache directory

Exceptions

RuntimeException

at line line 51
cleanup()

Cleanups storage.

at line line 69
bool|string lock(Request $request)

Tries to lock the cache for a given Request, without blocking.

Parameters

Request $request A Request instance

Return Value

bool|string true if the lock is acquired, the path to the current lock otherwise

at line line 98
bool unlock(Request $request)

Releases the lock for the given Request.

Parameters

Request $request A Request instance

Return Value

bool False if the lock file does not exist or cannot be unlocked, true otherwise

at line line 113
bool isLocked(Request $request)

Returns whether or not a lock exists.

Parameters

Request $request A Request instance

Return Value

bool true if lock exists, false otherwise

at line line 140
Response|null lookup(Request $request)

Locates a cached Response for the Request provided.

Parameters

Request $request A Request instance

Return Value

Response|null A Response instance, or null if no cache entry was found

at line line 185
string write(Request $request, Response $response)

Writes a cache entry to the store for the given Request and Response.

Existing entries are read and any that match the response are removed. This method calls write with the new list of cache entries.

Parameters

Request $request A Request instance
Response $response A Response instance

Return Value

string The key under which the response is stored

Exceptions

RuntimeException

at line line 249
invalidate(Request $request)

Invalidates all cache entries that match the request.

Parameters

Request $request A Request instance

Exceptions

RuntimeException

at line line 326
bool purge(string $url)

Purges data for the given URL.

This method purges both the HTTP and the HTTPS version of the cache entry.

Parameters

string $url A URL

Return Value

bool true if the URL exists and has been purged, false otherwise

at line line 422
getPath($key)

Parameters

$key