protected function addPortOperation(Method $method) { $operation = $this->document->createElement('operation'); $operation->setAttribute('name', $method->getName()); foreach (array('input' => $method->getInput(), 'output' => $method->getOutput(), 'fault' => $method->getFault()) as $type => $message) { if ('fault' === $type && $message->isEmpty()) { continue; } $node = $this->document->createElement($type); $node->setAttribute('message', static::TYPES_NS . ':' . $message->getName()); $operation->appendChild($node); } $this->domPortType->appendChild($operation); return $operation; }