Introducing IRequest
This commit is contained in:
parent
6e1946ab00
commit
f115b94927
|
@ -22,12 +22,14 @@
|
|||
|
||||
namespace OC\AppFramework\Http;
|
||||
|
||||
use OCP\Core\IRequest;
|
||||
|
||||
/**
|
||||
* Class for accessing variables in the request.
|
||||
* This class provides an immutable object with request variables.
|
||||
*/
|
||||
|
||||
class Request implements \ArrayAccess, \Countable {
|
||||
class Request implements \ArrayAccess, \Countable, IRequest {
|
||||
|
||||
protected $items = array();
|
||||
protected $allowedKeys = array(
|
||||
|
@ -214,4 +216,111 @@ class Request implements \ArrayAccess, \Countable {
|
|||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lets you access post and get parameters by the index
|
||||
* In case of json requests the encoded json body is accessed
|
||||
*
|
||||
* @param string $key the key which you want to access in the URL Parameter
|
||||
* placeholder, $_POST or $_GET array.
|
||||
* The priority how they're returned is the following:
|
||||
* 1. URL parameters
|
||||
* 2. POST parameters
|
||||
* 3. GET parameters
|
||||
* @param mixed $default If the key is not found, this value will be returned
|
||||
* @return mixed the content of the array
|
||||
*/
|
||||
public function getParam($key, $default = null)
|
||||
{
|
||||
return isset($this->parameters[$key])
|
||||
? $this->parameters[$key]
|
||||
: $default;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns all params that were received, be it from the request
|
||||
* (as GET or POST) or throuh the URL by the route
|
||||
* @return array the array with all parameters
|
||||
*/
|
||||
public function getParams()
|
||||
{
|
||||
return $this->parameters;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the method of the request
|
||||
* @return string the method of the request (POST, GET, etc)
|
||||
*/
|
||||
public function getMethod()
|
||||
{
|
||||
return $this->method;
|
||||
}
|
||||
|
||||
/**
|
||||
* Shortcut for accessing an uploaded file through the $_FILES array
|
||||
* @param string $key the key that will be taken from the $_FILES array
|
||||
* @return array the file in the $_FILES element
|
||||
*/
|
||||
public function getUploadedFile($key)
|
||||
{
|
||||
return isset($this->files[$key]) ? $this->files[$key] : null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Shortcut for getting env variables
|
||||
* @param string $key the key that will be taken from the $_ENV array
|
||||
* @return array the value in the $_ENV element
|
||||
*/
|
||||
public function getEnv($key)
|
||||
{
|
||||
return isset($this->env[$key]) ? $this->env[$key] : null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Shortcut for getting session variables
|
||||
* @param string $key the key that will be taken from the $_SESSION array
|
||||
* @return array the value in the $_SESSION element
|
||||
*/
|
||||
function getSession($key)
|
||||
{
|
||||
return isset($this->session[$key]) ? $this->session[$key] : null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Shortcut for getting cookie variables
|
||||
* @param string $key the key that will be taken from the $_COOKIE array
|
||||
* @return array the value in the $_COOKIE element
|
||||
*/
|
||||
function getCookie($key)
|
||||
{
|
||||
return isset($this->cookies[$key]) ? $this->cookies[$key] : null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the request body content.
|
||||
*
|
||||
* @param Boolean $asResource If true, a resource will be returned
|
||||
*
|
||||
* @return string|resource The request body content or a resource to read the body stream.
|
||||
*
|
||||
* @throws \LogicException
|
||||
*/
|
||||
function getContent($asResource = false)
|
||||
{
|
||||
return null;
|
||||
// if (false === $this->content || (true === $asResource && null !== $this->content)) {
|
||||
// throw new \LogicException('getContent() can only be called once when using the resource return type.');
|
||||
// }
|
||||
//
|
||||
// if (true === $asResource) {
|
||||
// $this->content = false;
|
||||
//
|
||||
// return fopen('php://input', 'rb');
|
||||
// }
|
||||
//
|
||||
// if (null === $this->content) {
|
||||
// $this->content = file_get_contents('php://input');
|
||||
// }
|
||||
//
|
||||
// return $this->content;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,88 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by JetBrains PhpStorm.
|
||||
* User: deepdiver
|
||||
* Date: 20.08.13
|
||||
* Time: 16:15
|
||||
* To change this template use File | Settings | File Templates.
|
||||
*/
|
||||
|
||||
namespace OCP\Core;
|
||||
|
||||
|
||||
interface IRequest {
|
||||
|
||||
function getHeader($name);
|
||||
|
||||
/**
|
||||
* Lets you access post and get parameters by the index
|
||||
* In case of json requests the encoded json body is accessed
|
||||
*
|
||||
* @param string $key the key which you want to access in the URL Parameter
|
||||
* placeholder, $_POST or $_GET array.
|
||||
* The priority how they're returned is the following:
|
||||
* 1. URL parameters
|
||||
* 2. POST parameters
|
||||
* 3. GET parameters
|
||||
* @param mixed $default If the key is not found, this value will be returned
|
||||
* @return mixed the content of the array
|
||||
*/
|
||||
public function getParam($key, $default = null);
|
||||
|
||||
|
||||
/**
|
||||
* Returns all params that were received, be it from the request
|
||||
* (as GET or POST) or throuh the URL by the route
|
||||
* @return array the array with all parameters
|
||||
*/
|
||||
public function getParams();
|
||||
|
||||
/**
|
||||
* Returns the method of the request
|
||||
* @return string the method of the request (POST, GET, etc)
|
||||
*/
|
||||
public function getMethod();
|
||||
|
||||
/**
|
||||
* Shortcut for accessing an uploaded file through the $_FILES array
|
||||
* @param string $key the key that will be taken from the $_FILES array
|
||||
* @return array the file in the $_FILES element
|
||||
*/
|
||||
public function getUploadedFile($key);
|
||||
|
||||
|
||||
/**
|
||||
* Shortcut for getting env variables
|
||||
* @param string $key the key that will be taken from the $_ENV array
|
||||
* @return array the value in the $_ENV element
|
||||
*/
|
||||
public function getEnv($key);
|
||||
|
||||
|
||||
/**
|
||||
* Shortcut for getting session variables
|
||||
* @param string $key the key that will be taken from the $_SESSION array
|
||||
* @return array the value in the $_SESSION element
|
||||
*/
|
||||
function getSession($key);
|
||||
|
||||
|
||||
/**
|
||||
* Shortcut for getting cookie variables
|
||||
* @param string $key the key that will be taken from the $_COOKIE array
|
||||
* @return array the value in the $_COOKIE element
|
||||
*/
|
||||
function getCookie($key);
|
||||
|
||||
|
||||
/**
|
||||
* Returns the request body content.
|
||||
*
|
||||
* @param Boolean $asResource If true, a resource will be returned
|
||||
*
|
||||
* @return string|resource The request body content or a resource to read the body stream.
|
||||
*
|
||||
* @throws \LogicException
|
||||
*/
|
||||
function getContent($asResource = false);
|
||||
}
|
Loading…
Reference in New Issue