Commit 54cad6a0 authored by Jeroen Steggink's avatar Jeroen Steggink Committed by Markus Kalkbrenner

PUT request (#629)

* PUT request

* Updated CHANGELOG.md
parent e116146d
......@@ -6,6 +6,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
## [master]
### Added
- Basic support for PUT requests in the HttpAdapter layer
### Changed
......
......@@ -132,6 +132,8 @@ class Curl extends Configurable implements AdapterInterface
curl_setopt($handler, CURLOPT_CUSTOMREQUEST, 'HEAD');
} elseif (Request::METHOD_DELETE == $method) {
curl_setopt($handler, CURLOPT_CUSTOMREQUEST, 'DELETE');
} elseif (Request::METHOD_PUT == $method) {
curl_setopt($handler, CURLOPT_CUSTOMREQUEST, 'PUT');
} else {
throw new InvalidArgumentException("unsupported method: $method");
}
......
......@@ -109,6 +109,9 @@ class PeclHttp extends Configurable implements AdapterInterface
case Request::METHOD_DELETE:
$method = HTTP_METH_DELETE;
break;
case Request::METHOD_PUT:
$method = HTTP_METH_PUT;
break;
default:
throw new InvalidArgumentException(
'Unsupported method: '.$request->getMethod()
......
......@@ -158,6 +158,10 @@ class Zend2Http extends Configurable implements AdapterInterface
$client->setMethod('DELETE');
$client->setParameterGet($request->getParams());
break;
case Request::METHOD_PUT:
$client->setMethod('PUT');
$client->setParameterGet($request->getParams());
break;
default:
throw new OutOfBoundsException('Unsupported method: '.$request->getMethod());
break;
......
......@@ -159,6 +159,10 @@ class ZendHttp extends Configurable implements AdapterInterface
$client->setMethod(\Zend_Http_Client::DELETE);
$client->setParameterGet($request->getParams());
break;
case Request::METHOD_PUT:
$client->setMethod(\Zend_Http_Client::PUT);
$client->setParameterGet($request->getParams());
break;
default:
throw new OutOfBoundsException('Unsupported method: '.$request->getMethod());
break;
......
......@@ -34,6 +34,11 @@ class Request extends Configurable implements RequestParamsInterface
*/
const METHOD_DELETE = 'DELETE';
/**
* Request PUT method.
*/
const METHOD_PUT = 'PUT';
/**
* Default options.
*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment