* implemented support for additional header data
[Packages/TYPO3.CMS.git] / typo3 / sysext / extbase / Classes / Web / TX_EXTMVC_Web_Request.php
index 444d7f5..d6f670a 100755 (executable)
@@ -31,14 +31,6 @@ declare(ENCODING = 'utf-8');
  */
 class TX_EXTMVC_Web_Request extends TX_EXTMVC_Request {
 
-       const REQUEST_METHOD_UNKNOWN = NULL;
-       const REQUEST_METHOD_GET = 'GET';
-       const REQUEST_METHOD_POST = 'POST';
-       const REQUEST_METHOD_HEAD = 'HEAD';
-       const REQUEST_METHOD_OPTIONS = 'OPTIONS';
-       const REQUEST_METHOD_PUT = 'PUT';
-       const REQUEST_METHOD_DELETE = 'DELETE';
-
        /**
         * @var string The requested representation format
         */
@@ -47,7 +39,7 @@ class TX_EXTMVC_Web_Request extends TX_EXTMVC_Request {
        /**
         * @var string Contains the request method
         */
-       protected $method = self::REQUEST_METHOD_GET;
+       protected $method = 'GET';
 
        /**
         * @var F3_FLOW3_Utility_Environment
@@ -67,21 +59,13 @@ class TX_EXTMVC_Web_Request extends TX_EXTMVC_Request {
        /**
         * Sets the request method
         *
-        * @param string $method Name of the request method - one of the self::REQUEST_METHOD_* constants
+        * @param string $method Name of the request method
         * @return void
         * @author Robert Lemke <robert@typo3.org>
         * @throws TX_EXTMVC_Exception_InvalidRequestMethod if the request method is not supported
         */
        public function setMethod($method) {
-               if (array_search($method, array(
-                               self::REQUEST_METHOD_GET,
-                               self::REQUEST_METHOD_POST,
-                               self::REQUEST_METHOD_DELETE,
-                               self::REQUEST_METHOD_PUT,
-                               self::REQUEST_METHOD_HEAD,
-                               self::REQUEST_METHOD_OPTIONS,
-                               self::REQUEST_METHOD_UNKNOWN
-                       )) === FALSE) throw new TX_EXTMVC_Exception_InvalidRequestMethod('The request method "' . $method . '" is not supported.', 1217778382);
+               if ($method === '' || (strtoupper($method) !== $method)) throw new TX_EXTMVC_Exception_InvalidRequestMethod('The request method "' . $method . '" is not supported.', 1217778382);
                $this->method = $method;
        }
 
@@ -98,11 +82,11 @@ class TX_EXTMVC_Web_Request extends TX_EXTMVC_Request {
        /**
         * Sets the request URI
         *
-        * @param F3_FLOW3_Property_DataType_URI $requestURI URI of this web request
+        * @param string $requestURI URI of this web request
         * @return void
         * @author Robert Lemke <robert@typo3.org>
         */
-       public function setRequestURI(F3_FLOW3_Property_DataType_URI $requestURI) {
+       public function setRequestURI($requestURI) {
                $this->requestURI = clone $requestURI;
                $this->baseURI = $this->detectBaseURI($requestURI);
        }
@@ -120,11 +104,11 @@ class TX_EXTMVC_Web_Request extends TX_EXTMVC_Request {
        /**
         * Sets the base URI for this request.
         *
-        * @param F3_FLOW3_Property_DataType_URI $baseURI New base URI
+        * @param string $baseURI New base URI
         * @return void
         * @author Robert Lemke <robert@typo3.org>
         */
-       public function setBaseURI(F3_FLOW3_Property_DataType_URI $baseURI) {
+       public function setBaseURI($baseURI) {
                $this->baseURI = clone $baseURI;
        }
 
@@ -141,11 +125,11 @@ class TX_EXTMVC_Web_Request extends TX_EXTMVC_Request {
        /**
         * Tries to detect the base URI of this request and returns it.
         *
-        * @param F3_FLOW3_Property_DataType_URI $requestURI URI of this web request
-        * @return F3_FLOW3_Property_DataType_URI The detected base URI
+        * @param string $requestURI URI of this web request
+        * @return string The detected base URI
         * @author Robert Lemke <robert@typo3.org>
         */
-       protected function detectBaseURI(F3_FLOW3_Property_DataType_URI $requestURI) {
+       protected function detectBaseURI($requestURI) {
                $baseURI = clone $requestURI;
                $baseURI->setQuery(NULL);
                $baseURI->setFragment(NULL);