original_string: public function addMethod($method, $name = null)
      {
          if (is_array($method)) {
              require_once 'Zend/Server/Method/Definition.php';
              $method = new Zend_Server_Method_Definition($method);
          } elseif (!$method instanceof Zend_Server_Method_Definition) {
              require_once 'Zend/Server/Exception.php';
              throw new Zend_Server_Exception('Invalid method provided');
          }
  
          if (is_numeric($name)) {
              $name = null;
          }
          if (null !== $name) {
              $method->setName($name);
          } else {
              $name = $method->getName();
          }
          if (null === $name) {
              require_once 'Zend/Server/Exception.php';
              throw new Zend_Server_Exception('No method name provided');
          }
  
          if (!$this->_overwriteExistingMethods && array_key_exists($name, $this->_methods)) {
              require_once 'Zend/Server/Exception.php';
              throw new Zend_Server_Exception(sprintf('Method by name of "%s" already exists', $name));
          }
          $this->_methods[$name] = $method;
          return $this;
      }
code: public function addMethod($method, $name = null)
      {
          if (is_array($method)) {
              require_once 'Zend/Server/Method/Definition.php';
              $method = new Zend_Server_Method_Definition($method);
          } elseif (!$method instanceof Zend_Server_Method_Definition) {
              require_once 'Zend/Server/Exception.php';
              throw new Zend_Server_Exception('Invalid method provided');
          }
  
          if (is_numeric($name)) {
              $name = null;
          }
          if (null !== $name) {
              $method->setName($name);
          } else {
              $name = $method->getName();
          }
          if (null === $name) {
              require_once 'Zend/Server/Exception.php';
              throw new Zend_Server_Exception('No method name provided');
          }
  
          if (!$this->_overwriteExistingMethods && array_key_exists($name, $this->_methods)) {
              require_once 'Zend/Server/Exception.php';
              throw new Zend_Server_Exception(sprintf('Method by name of "%s" already exists', $name));
          }
          $this->_methods[$name] = $method;
          return $this;
      }
code_tokens: public function addMethod ( $ method , $ name = null ) { if ( is_array ( $ method ) ) { require_once 'Zend/Server/Method/Definition.php' ; $ method = new Zend_Server_Method_Definition ( $ method ) ; } elseif ( ! $ method instanceof Zend_Server_Method_Definition ) { require_once 'Zend/Server/Exception.php' ; throw new Zend_Server_Exception ( 'Invalid method provided' ) ; } if ( is_numeric ( $ name ) ) { $ name = null ; } if ( null !== $ name ) { $ method -> setName ( $ name ) ; } else { $ name = $ method -> getName ( ) ; } if ( null === $ name ) { require_once 'Zend/Server/Exception.php' ; throw new Zend_Server_Exception ( 'No method name provided' ) ; } if ( ! $ this -> _overwriteExistingMethods && array_key_exists ( $ name , $ this -> _methods ) ) { require_once 'Zend/Server/Exception.php' ; throw new Zend_Server_Exception ( sprintf ( 'Method by name of "%s" already exists' , $ name ) ) ; } $ this -> _methods [ $ name ] = $ method ; return $ this ; }
docstring: Add method to definition
  
  @param  array|Zend_Server_Method_Definition $method
  @param  null|string $name
  @return Zend_Server_Definition
  @throws Zend_Server_Exception if duplicate or invalid method provided
docstring_tokens: Add method to definition