. */ /** * Base class of each Sql Builder object * * @package Doctrine * @subpackage Query * @author Guilherme Blanco * @author Janne Vanhala * @license http://www.opensource.org/licenses/lgpl-license.php LGPL * @link http://www.phpdoctrine.org * @since 1.0 * @version $Revision$ */ abstract class Doctrine_Query_SqlBuilder { /** * The Connection object. * * @var Doctrine_Connection */ protected $_connection; public static function fromConnection(Doctrine_Connection $connection = null) { if ($connection === null) { $connection = Doctrine_EntityManager::getManager()->getConnection(); } $className = "Doctrine_Query_SqlBuilder_" . $connection->getDriverName(); $sqlBuilder = new $className(); $sqlBuilder->_connection = $connection; return $sqlBuilder; } /** * Retrieves the assocated Doctrine_Connection to this object. * * @return Doctrine_Connection */ public function getConnection() { return $this->_connection; } /** * @nodoc */ public function quoteIdentifier($identifier) { return $this->_connection->quoteIdentifier($identifier); } // Start Common SQL generations // Here we follow the SQL-99 specifications available at: // http://savage.net.au/SQL/sql-99.bnf // End of Common SQL generations }