/** * _getRequestProxy * * @param string $parameters * @param string $options * @return void */ protected function _getRequestProxy($parameters, $options = array()) { $cakeRequest = new CakeRequest(); $request =& new OauthLibAppController($cakeRequest); $request->request->data = $parameters; $request->request->params['url'] = array('url' => '/', 'ext' => 'html'); $_ENV['CONTENT_TYPE'] = 'application/x-www-form-urlencoded'; $_ENV['Authorization'] = null; return RequestFactory::proxy($request, $options); }
/** * testThatProxyPostAndGetRequestWorks * * @return void */ public function testThatProxyPostAndGetRequestWorks() { $http = null; $request =& new ClientHttp($http, '/test?key=value', array(), 'POST'); $params = array('key2' => 'value2'); $requestProxy = RequestFactory::proxy($request, array('uri' => 'http://example.com/test?key=value', 'parameters' => $params)); $expectedParameters = array('key' => array('value'), 'key2' => array('value2')); $this->assertEqual($expectedParameters, $requestProxy->parameters()); $this->assertEqual('http://example.com/test', $requestProxy->uri()); $this->assertEqual('POST', $requestProxy->method()); }
/** * Factory build method for signature * * @param Request $request * @param array $options */ public function build($request, $options = array()) { $_this = Signature::getInstance(); $request = RequestFactory::proxy($request, $options); $signatureMethod = $request->signatureMethod(); if (isset($_this->availableMethods[$signatureMethod])) { $class = $_this->availableMethods[$signatureMethod]; } else { throw new Exception("UnknownSignatureMethod {$signatureMethod}"); } return new $class($request, $options); }
/** * Oauth request parameters * * @return boolean */ public function oauthParameters() { $proxy = RequestFactory::proxy($this->Controller); return $proxy->parameters(); }
/** * testThatProxyPostRequestWorksWithMixedParamSources * * @return void */ public function testThatProxyPostRequestWorksWithMixedParamSources() { $request = $this->__HttpObject('/test?key=value', 'POST'); $request->setFormData(array('key2' => array('value2'))); $requestProxy = RequestFactory::proxy($request, array('uri' => 'http://example.com/test?key=value', 'parameters' => array('key3' => array('value3')))); $expected = array('key' => array('value'), 'key2' => array('value2'), 'key3' => array('value3')); $this->assertEqual($expected, $requestProxy->parametersForSignature()); $this->assertEqual('http://example.com/test', $requestProxy->normalizedUri()); $this->assertEqual('POST', $requestProxy->method()); }
/** * Return mocked request object * * @param string $params * @param string $method * @param string $uri * @return Request Object */ public function request($params = array(), $method = 'GET', $uri = "http://photos.example.net/photos") { App::uses('RequestFactory', 'OauthLib.Lib'); return RequestFactory::proxy(new MockObject(array('parameters' => $params, 'method' => $method, 'uri' => $uri))); }
/** * Get request parameters * * @return array */ public function parameters() { $proxy = RequestFactory::proxy($this->request); return $proxy->parameters(); }