MediaWiki  REL1_24
SwiftVirtualRESTService Class Reference

Example virtual rest service for OpenStack Swift : caching support (APC/memcached) More...

Inheritance diagram for SwiftVirtualRESTService:
Collaboration diagram for SwiftVirtualRESTService:

List of all members.

Public Member Functions

 __construct (array $params)
 onRequests (array $reqs, Closure $idGeneratorFunc)
 Prepare virtual HTTP(S) requests (for this service) for execution.
 onResponses (array $reqs, Closure $idGeneratorFunc)
 Mangle or replace virtual HTTP(S) requests which have been responded to.

Protected Member Functions

 applyAuthResponse (array $req)
 needsAuthRequest ()

Protected Attributes

string $authCachedReason = null
 *
int $authCachedStatus = null
 *
array $authCreds
 *
int $authErrorTimestamp = null
 UNIX timestamp *.
int $authSessionTimestamp = 0
 UNIX timestamp *.

Detailed Description

Example virtual rest service for OpenStack Swift : caching support (APC/memcached)

Since:
1.23

Definition at line 28 of file SwiftVirtualRESTService.php.


Constructor & Destructor Documentation

Parameters:
array$paramsKey/value map
  • swiftAuthUrl : Swift authentication server URL
  • swiftUser : Swift user used by MediaWiki (account:username)
  • swiftKey : Swift authentication key for the above user
  • swiftAuthTTL : Swift authentication TTL (seconds)

Reimplemented from VirtualRESTService.

Definition at line 42 of file SwiftVirtualRESTService.php.


Member Function Documentation

Definition at line 64 of file SwiftVirtualRESTService.php.

Returns:
int|bool HTTP status on cached failure

Definition at line 49 of file SwiftVirtualRESTService.php.

SwiftVirtualRESTService::onRequests ( array reqs,
Closure $  idGeneratorFunc 
)

Prepare virtual HTTP(S) requests (for this service) for execution.

This method should mangle any of the $reqs entry fields as needed:

  • url : munge the URL to have an absolute URL with a protocol and encode path components as needed by the backend [required]
  • query : include any authentication signatures/parameters [as needed]
  • headers : include any authentication tokens/headers [as needed]

The incoming URL parameter will be relative to the service mount point.

This method can also remove some of the requests as well as add new ones (using $idGenerator to set each of the entries' array keys). For any existing or added request, the 'response' array can be filled in, which will prevent the client from executing it. If an original request is removed, at some point it must be added back (with the same key) in onRequests() or onResponses(); it's reponse may be filled in as with other requests.

Parameters:
array$reqsMap of Virtual HTTP request arrays
Closure$idGeneratorFuncMethod to generate unique keys for new requests
Returns:
array Modified HTTP request array map

Reimplemented from VirtualRESTService.

Definition at line 87 of file SwiftVirtualRESTService.php.

SwiftVirtualRESTService::onResponses ( array reqs,
Closure $  idGeneratorFunc 
)

Mangle or replace virtual HTTP(S) requests which have been responded to.

This method may mangle any of the $reqs entry 'response' fields as needed:

  • code : perform any code normalization [as needed]
  • reason : perform any reason normalization [as needed]
  • headers : perform any header normalization [as needed]

This method can also remove some of the requests as well as add new ones (using $idGenerator to set each of the entries' array keys). For any existing or added request, the 'response' array can be filled in, which will prevent the client from executing it. If an original request is removed, at some point it must be added back (with the same key) in onRequests() or onResponses(); it's reponse may be filled in as with other requests. All requests added to $reqs will be passed through onRequests() to handle any munging required as normal.

The incoming URL parameter will be relative to the service mount point.

Parameters:
array$reqsMap of Virtual HTTP request arrays with 'response' set
Closure$idGeneratorFuncMethod to generate unique keys for new requests
Returns:
array Modified HTTP request array map

Reimplemented from VirtualRESTService.

Definition at line 142 of file SwiftVirtualRESTService.php.


Member Data Documentation

string SwiftVirtualRESTService::$authCachedReason = null [protected]

*

Definition at line 33 of file SwiftVirtualRESTService.php.

int SwiftVirtualRESTService::$authCachedStatus = null [protected]

*

Definition at line 32 of file SwiftVirtualRESTService.php.

array SwiftVirtualRESTService::$authCreds [protected]

*

Definition at line 29 of file SwiftVirtualRESTService.php.

int SwiftVirtualRESTService::$authErrorTimestamp = null [protected]

UNIX timestamp *.

Definition at line 31 of file SwiftVirtualRESTService.php.

int SwiftVirtualRESTService::$authSessionTimestamp = 0 [protected]

UNIX timestamp *.

Definition at line 30 of file SwiftVirtualRESTService.php.


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