ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
CAS_ProxiedService_Http_Get Class Reference

This class is used to make proxied service requests via the HTTP GET method. More...

+ Inheritance diagram for CAS_ProxiedService_Http_Get:
+ Collaboration diagram for CAS_ProxiedService_Http_Get:

Protected Member Functions

 populateRequest (CAS_Request_RequestInterface $request)
 Add any other parts of the request needed by concrete classes. More...
 
- Protected Member Functions inherited from CAS_ProxiedService_Http_Abstract
 makeRequest ($url)
 Build and perform a request, following redirects. More...
 
 populateRequest (CAS_Request_RequestInterface $request)
 Add any other parts of the request needed by concrete classes. More...
 
 getRedirectUrl (array $responseHeaders)
 Answer a redirect URL if a redirect header is found, otherwise null. More...
 
 hasBeenSent ()
 Answer true if our request has been sent yet. More...
 
- Protected Member Functions inherited from CAS_ProxiedService_Abstract
 getProxyTicket ()
 Answer the proxy ticket to be used when making requests. More...
 
 initializeProxyTicket ()
 Fetch our proxy ticket. More...
 

Additional Inherited Members

- Public Member Functions inherited from CAS_ProxiedService_Http_Abstract
 __construct (CAS_Request_RequestInterface $requestHandler, CAS_CookieJar $cookieJar)
 Constructor. More...
 
 getServiceUrl ()
 Answer a service identifier (URL) for whom we should fetch a proxy ticket. More...
 
 setUrl ($url)
 Set the URL of the Request. More...
 
 send ()
 Perform the request. More...
 
 getResponseHeaders ()
 Answer the headers of the response. More...
 
 getResponseStatusCode ()
 Answer HTTP status code of the response. More...
 
 getResponseBody ()
 Answer the body of response. More...
 
 getCookies ()
 Answer the cookies from the response. More...
 
- Public Member Functions inherited from CAS_ProxiedService_Abstract
 setProxyTicket ($proxyTicket)
 Register a proxy ticket with the Proxy that it can use when making requests. More...
 
 setCasClient (CAS_Client $casClient)
 Use a particular CAS_Client->initializeProxiedService() rather than the static phpCAS::initializeProxiedService(). More...
 
- Public Member Functions inherited from CAS_ProxiedService
 getServiceUrl ()
 Answer a service identifier (URL) for whom we should fetch a proxy ticket. More...
 
 setProxyTicket ($proxyTicket)
 Register a proxy ticket with the ProxiedService that it can use when making requests. More...
 
- Public Member Functions inherited from CAS_ProxiedService_Http
 setUrl ($url)
 Set the URL of the Request. More...
 
 send ()
 Perform the request. More...
 
 getResponseHeaders ()
 Answer the headers of the response. More...
 
 getResponseBody ()
 Answer the body of response. More...
 
- Protected Attributes inherited from CAS_ProxiedService_Http_Abstract
 $requestHandler
 The HTTP request mechanism talking to the target service. More...
 

Detailed Description

This class is used to make proxied service requests via the HTTP GET method.

Usage Example:

 try {
    $service = phpCAS::getProxiedService(PHPCAS_PROXIED_SERVICE_HTTP_GET);
    $service->setUrl('http://www.example.com/path/');
    $service->send();
    if ($service->getResponseStatusCode() == 200)
            return $service->getResponseBody();
    else
            // The service responded with an error code 404, 500, etc.
            throw new Exception('The service responded with an error.');

    } catch (CAS_ProxyTicketException $e) {
     if ($e->getCode() == PHPCAS_SERVICE_PT_FAILURE)
            return "Your login has timed out. You need to log in again.";
    else
            // Other proxy ticket errors are from bad request format
     // (shouldn't happen) or CAS server failure (unlikely)
     // so lets just stop if we hit those.
            throw $e;
 } catch (CAS_ProxiedService_Exception $e) {
    // Something prevented the service request from being sent or received.
    // We didn't even get a valid error response (404, 500, etc), so this
    // might be caused by a network error or a DNS resolution failure.
    // We could handle it in some way, but for now we will just stop.
    throw $e;
 }

Definition at line 68 of file Get.php.

Member Function Documentation

◆ populateRequest()

CAS_ProxiedService_Http_Get::populateRequest ( CAS_Request_RequestInterface  $request)
protected

Add any other parts of the request needed by concrete classes.

Parameters
CAS_Request_RequestInterface$requestrequest interface
Returns
void

Definition at line 79 of file Get.php.

80  {
81  // do nothing, since the URL has already been sent and that is our
82  // only data.
83  }

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