use OC\AppFramework\Utility\TimeFactory;
use OCP\AppFramework\IApi;
use OCP\AppFramework\IAppContainer;
+use OCP\AppFramework\IMiddleWare;
+use OCP\IServerContainer;
class DIContainer extends SimpleContainer implements IAppContainer{
* Http
*/
$this['Request'] = $this->share(function($c) {
-
- $params = array();
-
- // we json decode the body only in case of content type json
- if (isset($_SERVER['CONTENT_TYPE']) && stripos($_SERVER['CONTENT_TYPE'],'json') === true ) {
- $params = json_decode(file_get_contents('php://input'), true);
- $params = is_array($params) ? $params: array();
- }
-
- return new Request(
- array(
- 'get' => $_GET,
- 'post' => $_POST,
- 'files' => $_FILES,
- 'server' => $_SERVER,
- 'env' => $_ENV,
- 'session' => $_SESSION,
- 'cookies' => $_COOKIE,
- 'method' => (isset($_SERVER) && isset($_SERVER['REQUEST_METHOD']))
- ? $_SERVER['REQUEST_METHOD']
- : null,
- 'params' => $params,
- 'urlParams' => $c['urlParams']
- )
- );
+ /** @var $c SimpleContainer */
+ /** @var $server IServerContainer */
+ $server = $c->query('ServerContainer');
+ return $server->getRequest();
});
$this['Protocol'] = $this->share(function($c){
{
return $this->query('ServerContainer');
}
+
+ /**
+ * @param IMiddleWare $middleWare
+ * @return boolean
+ */
+ function registerMiddleWare(IMiddleWare $middleWare) {
+ /** @var $dispatcher MiddlewareDispatcher */
+ $dispatcher = $this->query('MiddlewareDispatcher');
+ $dispatcher->registerMiddleware($middleWare);
+
+ }
+
+ /**
+ * used to return the appname of the set application
+ * @return string the name of your application
+ */
+ function getAppName() {
+ return $this->query('AppName');
+ }
}
*/
interface IAppContainer extends IContainer{
+ /**
+ * used to return the appname of the set application
+ * @return string the name of your application
+ */
+ function getAppName();
+
/**
* @return IApi
*/
* @return \OCP\IServerContainer
*/
function getServer();
+
+ /**
+ * @param IMiddleWare $middleWare
+ * @return boolean
+ */
+ function registerMiddleWare(IMiddleWare $middleWare);
}