/** * @param $fault \GoetasWebservices\XML\WSDLReader\Wsdl\PortType\Fault * @return \GoetasWebservices\XML\WSDLReader\Wsdl\PortType\Operation */ public function addFault(\GoetasWebservices\XML\WSDLReader\Wsdl\PortType\Fault $fault) { $this->fault[$fault->getName()] = $fault; return $this; }
private function loadFault(Operation $operation, DOMElement $node) { $fault = new Fault($operation, $node->getAttribute("name")); $fault->setDocumentation($this->getDocumentation($node)); $operation->addFault($fault); return function () use($fault, $operation, $node) { list($name, $ns) = self::splitParts($node, $node->getAttribute("message")); $fault->setMessage($operation->getDefinition()->findMessage($name, $ns)); $this->dispatcher->dispatch('portType.operation.fault', new FaultEvent($fault, $node)); }; }