コード例 #1
0
ファイル: RpcEncoded.php プロジェクト: sirdiego/autoloader
 public function typeParameters(MethodParser $method)
 {
     $elements = array();
     foreach ($method->parameters() as $parameter) {
         $elements[] = $this->_generateType($parameter);
     }
     return $elements;
 }
コード例 #2
0
 public function typeParameters(MethodParser $method)
 {
     $element = new TypesElement();
     $element->setName($method->getName());
     foreach ($method->parameters() as $parameter) {
         $this->_generateElements($parameter, $element);
     }
     return array($element);
 }
コード例 #3
0
ファイル: MethodParserTest.php プロジェクト: phogl/autoloader
 /**
  * @test
  */
 public function shouldParseMethodData()
 {
     //when
     $parser = new MethodParser($this->_methodName, $this->_methodDoc);
     //then
     $this->assertEquals('Method to adding user', $parser->description());
     $this->assertCount(3, $parser->parameters());
     $this->assertInstanceOf('WSDL\\Types\\Simple', $parser->returning());
     $this->assertEquals($this->_methodDoc, $parser->getDoc());
     $this->assertEquals($this->_methodName, $parser->getName());
 }
コード例 #4
0
ファイル: Service.php プロジェクト: sirdiego/autoloader
 public function getParams(MethodParser $method)
 {
     $result = array();
     foreach ($method->parameters() as $parameter) {
         if ($parameter instanceof Simple) {
             $result[] = '?';
         }
         if ($parameter instanceof Arrays) {
             $result[] = array('?', '?', '?');
         }
     }
     return $result;
 }
コード例 #5
0
 public function __call($method, $args)
 {
     if (!method_exists($this->_obj, $method)) {
         throw new BadMethodCallException('Unknown method [' . $method . ']');
     }
     $reflectedMethod = new ReflectionMethod($this->_obj, $method);
     $parsedMethod = new MethodParser($method, $reflectedMethod->getDocComment());
     $parameters = $parsedMethod->parameters();
     $returning = $parsedMethod->returning();
     $args = $this->_parseArgs($args, $parameters);
     $return = call_user_func_array(array($this->_obj, $method), $args);
     $obj = new stdClass();
     foreach (array_keys($return) as $returnVariable) {
         $obj->{$returnVariable} = $return[$returnVariable];
     }
     return $obj;
 }