|
|
|
@ -31,8 +31,11 @@ namespace OCP\AppFramework; |
|
|
|
|
* to be registered using IContainer::registerService |
|
|
|
|
*/ |
|
|
|
|
class App { |
|
|
|
|
public function __construct($appName) { |
|
|
|
|
$this->container = new \OC\AppFramework\DependencyInjection\DIContainer($appName); |
|
|
|
|
/** |
|
|
|
|
* @param array $urlParams an array with variables extracted from the routes |
|
|
|
|
*/ |
|
|
|
|
public function __construct($appName, $urlParams = array()) { |
|
|
|
|
$this->container = new \OC\AppFramework\DependencyInjection\DIContainer($appName, $urlParams); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private $container; |
|
|
|
@ -50,8 +53,8 @@ class App { |
|
|
|
|
* Example code in routes.php of the task app: |
|
|
|
|
* $this->create('tasks_index', '/')->get()->action( |
|
|
|
|
* function($params){ |
|
|
|
|
* $app = new TaskApp(); |
|
|
|
|
* $app->dispatch('PageController', 'index', $params); |
|
|
|
|
* $app = new TaskApp($params); |
|
|
|
|
* $app->dispatch('PageController', 'index'); |
|
|
|
|
* } |
|
|
|
|
* ); |
|
|
|
|
* |
|
|
|
@ -59,8 +62,8 @@ class App { |
|
|
|
|
* Example for for TaskApp implementation: |
|
|
|
|
* class TaskApp extends \OCP\AppFramework\App { |
|
|
|
|
* |
|
|
|
|
* public function __construct(){ |
|
|
|
|
* parent::__construct('tasks'); |
|
|
|
|
* public function __construct($params){ |
|
|
|
|
* parent::__construct('tasks', $params); |
|
|
|
|
* |
|
|
|
|
* $this->getContainer()->registerService('PageController', function(IAppContainer $c){ |
|
|
|
|
* $a = $c->query('API'); |
|
|
|
@ -73,9 +76,8 @@ class App { |
|
|
|
|
* @param string $controllerName the name of the controller under which it is |
|
|
|
|
* stored in the DI container |
|
|
|
|
* @param string $methodName the method that you want to call |
|
|
|
|
* @param array $urlParams an array with variables extracted from the routes |
|
|
|
|
*/ |
|
|
|
|
public function dispatch($controllerName, $methodName, array $urlParams) { |
|
|
|
|
\OC\AppFramework\App::main($controllerName, $methodName, $urlParams, $this->container); |
|
|
|
|
public function dispatch($controllerName, $methodName) { |
|
|
|
|
\OC\AppFramework\App::main($controllerName, $methodName, $this->container); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|