Skip to content

Instantly share code, notes, and snippets.

@paullinney
Created July 13, 2016 08:49
Show Gist options
  • Save paullinney/16f546f5a68aecf51fe91073d90562e9 to your computer and use it in GitHub Desktop.
Save paullinney/16f546f5a68aecf51fe91073d90562e9 to your computer and use it in GitHub Desktop.
Acquia Auth to Selenium Client for Update (post) then returns status
/**
* Adds auth to update request (post)
*
* @param $update
*
* @return $update
*/
function update($update) {
$request = $this->client->createRequest($update);
$endpoint = $this->client->getEndpoint();
// Acquia bit
$signature = new Signature($endpoint->getKey());
$acquia_solr_hmac = $signature->generate($request->getRawData());
$acquia_solr_time = $signature->getRequestTime();
$acquia_solr_nonce = $signature->getNonce();
// Add cookies to request through Solarium adapter Zend2Http
$this->client->setAdapter('Solarium\Core\Client\Adapter\Zend2Http');
$zendHttp = $this->client->getAdapter()->getZendHttp();
$zendHttp->addCookie('acquia_solr_time', $acquia_solr_time);
$zendHttp->addCookie('acquia_solr_nonce', $acquia_solr_nonce);
$zendHttp->addCookie('acquia_solr_hmac', $acquia_solr_hmac);
$result = $this->client->update($update);
return $result->getStatus();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment