5bdb22a35f69158b73405c830d4e35952bb774a3
[yaffs-website] / web / core / modules / system / tests / modules / module_test / src / Controller / ModuleTestController.php
1 <?php
2
3 namespace Drupal\module_test\Controller;
4
5 use Drupal\module_autoload_test\SomeClass;
6
7 /**
8  * Controller routines for module_test routes.
9  */
10 class ModuleTestController {
11
12   /**
13    * Returns dynamically invoked hook results for the 'module_test' module
14    *
15    * @return array
16    *   Renderable array.
17    */
18   public function hookDynamicLoadingInvoke() {
19     $result = \Drupal::moduleHandler()->invoke('module_test', 'test_hook');
20     return $result['module_test'];
21   }
22
23   /**
24    * Returns dynamically invoked hook results for all modules.
25    *
26    * @return array
27    *   Renderable array.
28    */
29   public function hookDynamicLoadingInvokeAll() {
30     $result = \Drupal::moduleHandler()->invokeAll('test_hook');
31     return $result['module_test'];
32   }
33
34   /**
35    * Returns the result of an autoloaded class's public method.
36    *
37    * @return array
38    *   Renderable array.
39    */
40   public function testClassLoading() {
41     $markup = NULL;
42     if (class_exists('Drupal\module_autoload_test\SomeClass')) {
43       $obj = new SomeClass();
44       $markup = $obj->testMethod();
45     }
46     return ['#markup' => $markup];
47   }
48
49 }