/** * @return void */ private function buildForMethods() { $classMethods = $this->reflectionClass()->getMethods(); $methods = []; foreach ($classMethods as $classMethod) { $webMethodAnnotation = $this->annotationReader->getMethodAnnotation($classMethod, '\\WSDL\\Annotation\\WebMethod'); if ($webMethodAnnotation === null) { continue; } $methodBuilder = MethodBuilder::instance(); /** @var MethodAnnotation[] $methodAnnotations */ $methodAnnotations = $this->annotationReader->getMethodAnnotations($classMethod); foreach ($methodAnnotations as $methodAnnotation) { $methodAnnotation->build($methodBuilder, $classMethod); } $methods[] = $methodBuilder->build(); } $this->builder->setMethods($methods); }
/** * @inheritdoc */ public function build(MethodBuilder $builder, ReflectionMethod $method) { $tokenizer = new Tokenizer(); $builder->setParameter(Parameter::fromTokens($tokenizer->lex($this->param), $this->header)); }
/** * @inheritdoc */ public function build(MethodBuilder $builder, ReflectionMethod $method) { $builder->setName($method->getShortName()); }