original_string: public function get_content_handler($handler = null)
  	{
  		if ( ! empty($this->handler_object))
  		{
  			return $this->handler_object;
  		}
  
  		// When not yet set, use $handler or detect the preferred handler (string = string, otherwise serialize)
  		if (empty($this->content_handler) && empty($handler))
  		{
  			if ( ! empty($handler))
  			{
  				$this->content_handler = $handler;
  			}
  			if (is_string($this->contents))
  			{
  				$this->content_handler = \Config::get('cache.string_handler', 'string');
  			}
  			else
  			{
  				$type = is_object($this->contents) ? get_class($this->contents) : gettype($this->contents);
  				$this->content_handler = \Config::get('cache.'.$type.'_handler', 'serialized');
  			}
  		}
  
  		$class = '\\Cache_Handler_'.ucfirst($this->content_handler);
  		$this->handler_object = new $class();
  
  		return $this->handler_object;
  	}
code: public function get_content_handler($handler = null)
  	{
  		if ( ! empty($this->handler_object))
  		{
  			return $this->handler_object;
  		}
  
  		// When not yet set, use $handler or detect the preferred handler (string = string, otherwise serialize)
  		if (empty($this->content_handler) && empty($handler))
  		{
  			if ( ! empty($handler))
  			{
  				$this->content_handler = $handler;
  			}
  			if (is_string($this->contents))
  			{
  				$this->content_handler = \Config::get('cache.string_handler', 'string');
  			}
  			else
  			{
  				$type = is_object($this->contents) ? get_class($this->contents) : gettype($this->contents);
  				$this->content_handler = \Config::get('cache.'.$type.'_handler', 'serialized');
  			}
  		}
  
  		$class = '\\Cache_Handler_'.ucfirst($this->content_handler);
  		$this->handler_object = new $class();
  
  		return $this->handler_object;
  	}
code_tokens: public function get_content_handler ( $ handler = null ) { if ( ! empty ( $ this -> handler_object ) ) { return $ this -> handler_object ; } // When not yet set, use $handler or detect the preferred handler (string = string, otherwise serialize) if ( empty ( $ this -> content_handler ) && empty ( $ handler ) ) { if ( ! empty ( $ handler ) ) { $ this -> content_handler = $ handler ; } if ( is_string ( $ this -> contents ) ) { $ this -> content_handler = \ Config :: get ( 'cache.string_handler' , 'string' ) ; } else { $ type = is_object ( $ this -> contents ) ? get_class ( $ this -> contents ) : gettype ( $ this -> contents ) ; $ this -> content_handler = \ Config :: get ( 'cache.' . $ type . '_handler' , 'serialized' ) ; } } $ class = '\\Cache_Handler_' . ucfirst ( $ this -> content_handler ) ; $ this -> handler_object = new $ class ( ) ; return $ this -> handler_object ; }
docstring: Gets a specific content handler
  
  @param   string
  @return  Cache_Handler_Driver
docstring_tokens: Gets a specific content handler