original_string: private function _controllerFor($name)
  	{
  		if(isset($this->_controllers[$name]) && is_string($this->_controllers[$name]))
  		{
  			return $this->_controllerFor($this->_controllers[$name]);
  		}
  		else if(isset($this->_controllers[$name]) && is_object($this->_controllers[$name]))
  		{
  			return $this->_controllers[$name];
  		}
  		else if(isset($this->_controllerFactory))
  		{
  			return $this->_controllerFactory->resolve($name);
  		}
  		else
  		{
  			throw new Exception("No controller found for $name");
  		}
  	}
code: private function _controllerFor($name)
  	{
  		if(isset($this->_controllers[$name]) && is_string($this->_controllers[$name]))
  		{
  			return $this->_controllerFor($this->_controllers[$name]);
  		}
  		else if(isset($this->_controllers[$name]) && is_object($this->_controllers[$name]))
  		{
  			return $this->_controllers[$name];
  		}
  		else if(isset($this->_controllerFactory))
  		{
  			return $this->_controllerFactory->resolve($name);
  		}
  		else
  		{
  			throw new Exception("No controller found for $name");
  		}
  	}
code_tokens: private function _controllerFor ( $ name ) { if ( isset ( $ this -> _controllers [ $ name ] ) && is_string ( $ this -> _controllers [ $ name ] ) ) { return $ this -> _controllerFor ( $ this -> _controllers [ $ name ] ) ; } else if ( isset ( $ this -> _controllers [ $ name ] ) && is_object ( $ this -> _controllers [ $ name ] ) ) { return $ this -> _controllers [ $ name ] ; } else if ( isset ( $ this -> _controllerFactory ) ) { return $ this -> _controllerFactory -> resolve ( $ name ) ; } else { throw new Exception ( "No controller found for $name" ) ; } }
docstring: Gets a controller for a path, either from a locally registered
  controller or one from a controller factory
docstring_tokens: Gets a controller for a path either from a locally registered controller or one from a controller factory