Example #1
0
 private function _getSignature(ehough_shortstop_api_HttpRequest $request, array $baseOAuthParams, ehough_coauthor_api_v1_Credentials $clientCredentials, ehough_coauthor_api_v1_Credentials $tokenCredentials = null)
 {
     $url = $request->getUrl();
     $existingQueryParams = $url->getQueryVariables();
     $signatureData = array_merge($existingQueryParams, $baseOAuthParams);
     foreach ($signatureData as $key => $value) {
         $signatureData[$this->_urlEncode($key)] = $this->_urlEncode($value);
     }
     uksort($signatureData, 'strcmp');
     $baseUrl = $url->getScheme() . '://' . $this->_getNormalizedAuthority($url) . $url->getPath();
     $baseStringParts = $this->_urlEncode(array($request->getMethod(), $baseUrl, $this->_concatParams($signatureData)));
     $baseString = implode('&', $baseStringParts);
     $keyParts = $this->_urlEncode(array($clientCredentials->getSecret(), $tokenCredentials === null ? '' : $tokenCredentials->getSecret()));
     $signingKey = implode('&', $keyParts);
     $signature = base64_encode($this->_hash($baseString, $signingKey));
     return $signature;
 }
Example #2
0
 public function testGetSecret()
 {
     $this->assertEquals('b', $this->_sut->getSecret());
 }