original_string: public static function getAuthSubSessionToken(
              $token, $client = null,
              $request_uri = self::AUTHSUB_SESSION_TOKEN_URI)
      {
          $client = self::getHttpClient($token, $client);
  
          if ($client instanceof Zend_Gdata_HttpClient) {
              $filterResult = $client->filterHttpRequest('GET', $request_uri);
              $url = $filterResult['url'];
              $headers = $filterResult['headers'];
              $client->setHeaders($headers);
              $client->setUri($url);
          } else {
              $client->setUri($request_uri);
          }
  
          try {
              $response = $client->request('GET');
          } catch (Zend_Http_Client_Exception $e) {
              require_once 'Zend/Gdata/App/HttpException.php';
              throw new Zend_Gdata_App_HttpException($e->getMessage(), $e);
          }
  
          // Parse Google's response
          if ($response->isSuccessful()) {
              $goog_resp = array();
              foreach (explode("\n", $response->getBody()) as $l) {
                  $l = chop($l);
                  if ($l) {
                      list($key, $val) = explode('=', chop($l), 2);
                      $goog_resp[$key] = $val;
                  }
              }
              return $goog_resp['Token'];
          } else {
              require_once 'Zend/Gdata/App/AuthException.php';
              throw new Zend_Gdata_App_AuthException(
                      'Token upgrade failed. Reason: ' . $response->getBody());
          }
      }
code: public static function getAuthSubSessionToken(
              $token, $client = null,
              $request_uri = self::AUTHSUB_SESSION_TOKEN_URI)
      {
          $client = self::getHttpClient($token, $client);
  
          if ($client instanceof Zend_Gdata_HttpClient) {
              $filterResult = $client->filterHttpRequest('GET', $request_uri);
              $url = $filterResult['url'];
              $headers = $filterResult['headers'];
              $client->setHeaders($headers);
              $client->setUri($url);
          } else {
              $client->setUri($request_uri);
          }
  
          try {
              $response = $client->request('GET');
          } catch (Zend_Http_Client_Exception $e) {
              require_once 'Zend/Gdata/App/HttpException.php';
              throw new Zend_Gdata_App_HttpException($e->getMessage(), $e);
          }
  
          // Parse Google's response
          if ($response->isSuccessful()) {
              $goog_resp = array();
              foreach (explode("\n", $response->getBody()) as $l) {
                  $l = chop($l);
                  if ($l) {
                      list($key, $val) = explode('=', chop($l), 2);
                      $goog_resp[$key] = $val;
                  }
              }
              return $goog_resp['Token'];
          } else {
              require_once 'Zend/Gdata/App/AuthException.php';
              throw new Zend_Gdata_App_AuthException(
                      'Token upgrade failed. Reason: ' . $response->getBody());
          }
      }
code_tokens: public static function getAuthSubSessionToken ( $ token , $ client = null , $ request_uri = self :: AUTHSUB_SESSION_TOKEN_URI ) { $ client = self :: getHttpClient ( $ token , $ client ) ; if ( $ client instanceof Zend_Gdata_HttpClient ) { $ filterResult = $ client -> filterHttpRequest ( 'GET' , $ request_uri ) ; $ url = $ filterResult [ 'url' ] ; $ headers = $ filterResult [ 'headers' ] ; $ client -> setHeaders ( $ headers ) ; $ client -> setUri ( $ url ) ; } else { $ client -> setUri ( $ request_uri ) ; } try { $ response = $ client -> request ( 'GET' ) ; } catch ( Zend_Http_Client_Exception $ e ) { require_once 'Zend/Gdata/App/HttpException.php' ; throw new Zend_Gdata_App_HttpException ( $ e -> getMessage ( ) , $ e ) ; } // Parse Google's response if ( $ response -> isSuccessful ( ) ) { $ goog_resp = array ( ) ; foreach ( explode ( "\n" , $ response -> getBody ( ) ) as $ l ) { $ l = chop ( $ l ) ; if ( $ l ) { list ( $ key , $ val ) = explode ( '=' , chop ( $ l ) , 2 ) ; $ goog_resp [ $ key ] = $ val ; } } return $ goog_resp [ 'Token' ] ; } else { require_once 'Zend/Gdata/App/AuthException.php' ; throw new Zend_Gdata_App_AuthException ( 'Token upgrade failed. Reason: ' . $ response -> getBody ( ) ) ; } }
docstring: Upgrades a single use token to a session token
  
  @param string $token The single use token which is to be upgraded
  @param Zend_Http_Client $client (optional) HTTP client to use to
  make the request
  @param string $request_uri (optional) URI to which to direct
  the session token upgrade
  @return string The upgraded token value
  @throws Zend_Gdata_App_AuthException
  @throws Zend_Gdata_App_HttpException
docstring_tokens: Upgrades a single use token to a session token