ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.ilSoapHook.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
26{
28
30 {
31 $this->component_factory = $component_factory;
32 }
33
39 public function getSoapMethods(): array
40 {
41 static $methods = null;
42 if ($methods !== null) {
43 return $methods;
44 }
45 $methods = array();
46 foreach ($this->component_factory->getActivePluginsInSlot('soaphk') as $plugin) {
47 foreach ($plugin->getSoapMethods() as $method) {
48 $methods[] = $method;
49 }
50 }
51 return $methods;
52 }
53
59 public function getWsdlTypes(): array
60 {
61 static $types = null;
62 if ($types !== null) {
63 return $types;
64 }
65 $types = array();
66 foreach ($this->component_factory->getActivePluginsInSlot('soaphk') as $plugin) {
67 foreach ($plugin->getWsdlTypes() as $type) {
68 $types[] = $type;
69 }
70 }
71 return $types;
72 }
73
74
81 public function getMethodByName(string $name): ?ilSoapMethod
82 {
83 $array = array_filter($this->getSoapMethods(), static function (ilSoapMethod $method) use ($name) {
84 return ($method->getName() === $name);
85 });
86 return array_pop($array);
87 }
88}
Class ilSoapHook.
getSoapMethods()
Get all registered soap methods over all SOAP plugins.
ilComponentFactory $component_factory
__construct(ilComponentFactory $component_factory)
getWsdlTypes()
Get all registered WSDL types over all SOAP plugins.
getMethodByName(string $name)
Get a registered soap method by name.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
getName()
Get the name of the method.