From 903ae8a581fac1e6917fc3e31d2ad8fb91df80c3 Mon Sep 17 00:00:00 2001 From: ctrlaltca <> Date: Thu, 12 Jul 2012 11:21:01 +0000 Subject: standardize the use of unix eol; use svn properties to enforce native eol --- framework/Data/SqlMap/TSqlMapGateway.php | 516 +++++++++++++++---------------- 1 file changed, 258 insertions(+), 258 deletions(-) (limited to 'framework/Data/SqlMap/TSqlMapGateway.php') diff --git a/framework/Data/SqlMap/TSqlMapGateway.php b/framework/Data/SqlMap/TSqlMapGateway.php index f1915e86..3be4e12f 100644 --- a/framework/Data/SqlMap/TSqlMapGateway.php +++ b/framework/Data/SqlMap/TSqlMapGateway.php @@ -1,261 +1,261 @@ - - * @link http://www.pradosoft.com/ + + * @link http://www.pradosoft.com/ * @copyright Copyright © 2005-2012 PradoSoft - * @license http://www.pradosoft.com/license/ - * @version $Id$ - * @package System.Data.SqlMap - */ - -Prado::using('System.Data.SqlMap.TSqlMapManager'); - -/** - * DataMapper client, a fascade to provide access the rest of the DataMapper - * framework. It provides three core functions: - * - * # execute an update query (including insert and delete). - * # execute a select query for a single object - * # execute a select query for a list of objects - * - * This class should be instantiated from a TSqlMapManager instance. - * - * @author Wei Zhuo - * @version $Id$ - * @package System.Data.SqlMap - * @since 3.1 - */ -class TSqlMapGateway extends TComponent -{ - /** - * @var TSqlMapManager manager - */ - private $_manager; - - public function __construct($manager) - { - $this->_manager=$manager; - } - - /** - * @return TSqlMapManager sqlmap manager. - */ - public function getSqlMapManager() - { - return $this->_manager; - } - - /** - * @return TDbConnection database connection. - */ - public function getDbConnection() - { - return $this->getSqlMapManager()->getDbConnection(); - } - - /** - * Executes a Sql SELECT statement that returns that returns data - * to populate a single object instance. - * - * The parameter object is generally used to supply the input - * data for the WHERE clause parameter(s) of the SELECT statement. - * - * @param string The name of the sql statement to execute. - * @param mixed The object used to set the parameters in the SQL. - * @param mixed An object of the type to be returned. - * @return object A single result object populated with the result set data. - */ - public function queryForObject($statementName, $parameter=null, $result=null) - { - $statement = $this->getSqlMapManager()->getMappedStatement($statementName); - return $statement->executeQueryForObject($this->getDbConnection(), $parameter, $result); - } - - /** - * Executes a Sql SELECT statement that returns data to populate a number - * of result objects. - * - * The parameter object is generally used to supply the input - * data for the WHERE clause parameter(s) of the SELECT statement. - * - * @param string The name of the sql statement to execute. - * @param mixed The object used to set the parameters in the SQL. - * @param TList An Ilist object used to hold the objects, - * pass in null if want to return a list instead. - * @param int The number of rows to skip over. - * @param int The maximum number of rows to return. - * @return TList A List of result objects. - */ - public function queryForList($statementName, $parameter=null, $result=null, $skip=-1, $max=-1) - { - $statement = $this->getSqlMapManager()->getMappedStatement($statementName); - return $statement->executeQueryForList($this->getDbConnection(),$parameter, $result, $skip, $max); - } - - /** - * Runs a query for list with a custom object that gets a chance to deal - * with each row as it is processed. - * - * Example: $sqlmap->queryWithRowDelegate('getAccounts', array($this, 'rowHandler')); - * - * @param string The name of the sql statement to execute. - * @param callback Row delegate handler, a valid callback required. - * @param mixed The object used to set the parameters in the SQL. - * @param TList An Ilist object used to hold the objects, - * pass in null if want to return a list instead. - * @param int The number of rows to skip over. - * @param int The maximum number of rows to return. - * @return TList A List of result objects. - */ - public function queryWithRowDelegate($statementName, $delegate, $parameter=null, $result=null, $skip=-1, $max=-1) - { - $statement = $this->getSqlMapManager()->getMappedStatement($statementName); - return $statement->executeQueryForList($this->getDbConnection(), $parameter, $result, $skip, $max, $delegate); - } - - /** - * Executes the SQL and retuns a subset of the results in a dynamic - * TPagedList that can be used to automatically scroll through results - * from a database table. - * @param string The name of the sql statement to execute. - * @param mixed The object used to set the parameters in the SQL. - * @param integer The maximum number of objects to store in each page. + * @license http://www.pradosoft.com/license/ + * @version $Id$ + * @package System.Data.SqlMap + */ + +Prado::using('System.Data.SqlMap.TSqlMapManager'); + +/** + * DataMapper client, a fascade to provide access the rest of the DataMapper + * framework. It provides three core functions: + * + * # execute an update query (including insert and delete). + * # execute a select query for a single object + * # execute a select query for a list of objects + * + * This class should be instantiated from a TSqlMapManager instance. + * + * @author Wei Zhuo + * @version $Id$ + * @package System.Data.SqlMap + * @since 3.1 + */ +class TSqlMapGateway extends TComponent +{ + /** + * @var TSqlMapManager manager + */ + private $_manager; + + public function __construct($manager) + { + $this->_manager=$manager; + } + + /** + * @return TSqlMapManager sqlmap manager. + */ + public function getSqlMapManager() + { + return $this->_manager; + } + + /** + * @return TDbConnection database connection. + */ + public function getDbConnection() + { + return $this->getSqlMapManager()->getDbConnection(); + } + + /** + * Executes a Sql SELECT statement that returns that returns data + * to populate a single object instance. + * + * The parameter object is generally used to supply the input + * data for the WHERE clause parameter(s) of the SELECT statement. + * + * @param string The name of the sql statement to execute. + * @param mixed The object used to set the parameters in the SQL. + * @param mixed An object of the type to be returned. + * @return object A single result object populated with the result set data. + */ + public function queryForObject($statementName, $parameter=null, $result=null) + { + $statement = $this->getSqlMapManager()->getMappedStatement($statementName); + return $statement->executeQueryForObject($this->getDbConnection(), $parameter, $result); + } + + /** + * Executes a Sql SELECT statement that returns data to populate a number + * of result objects. + * + * The parameter object is generally used to supply the input + * data for the WHERE clause parameter(s) of the SELECT statement. + * + * @param string The name of the sql statement to execute. + * @param mixed The object used to set the parameters in the SQL. + * @param TList An Ilist object used to hold the objects, + * pass in null if want to return a list instead. + * @param int The number of rows to skip over. + * @param int The maximum number of rows to return. + * @return TList A List of result objects. + */ + public function queryForList($statementName, $parameter=null, $result=null, $skip=-1, $max=-1) + { + $statement = $this->getSqlMapManager()->getMappedStatement($statementName); + return $statement->executeQueryForList($this->getDbConnection(),$parameter, $result, $skip, $max); + } + + /** + * Runs a query for list with a custom object that gets a chance to deal + * with each row as it is processed. + * + * Example: $sqlmap->queryWithRowDelegate('getAccounts', array($this, 'rowHandler')); + * + * @param string The name of the sql statement to execute. + * @param callback Row delegate handler, a valid callback required. + * @param mixed The object used to set the parameters in the SQL. + * @param TList An Ilist object used to hold the objects, + * pass in null if want to return a list instead. + * @param int The number of rows to skip over. + * @param int The maximum number of rows to return. + * @return TList A List of result objects. + */ + public function queryWithRowDelegate($statementName, $delegate, $parameter=null, $result=null, $skip=-1, $max=-1) + { + $statement = $this->getSqlMapManager()->getMappedStatement($statementName); + return $statement->executeQueryForList($this->getDbConnection(), $parameter, $result, $skip, $max, $delegate); + } + + /** + * Executes the SQL and retuns a subset of the results in a dynamic + * TPagedList that can be used to automatically scroll through results + * from a database table. + * @param string The name of the sql statement to execute. + * @param mixed The object used to set the parameters in the SQL. + * @param integer The maximum number of objects to store in each page. * @param integer The number of the page to initially load into the list. - * @return TPagedList A PaginatedList of beans containing the rows. - */ - public function queryForPagedList($statementName, $parameter=null, $pageSize=10, $page=0) - { - $statement = $this->getSqlMapManager()->getMappedStatement($statementName); - return new TSqlMapPagedList($statement, $parameter, $pageSize, null, $page); - } - - /** - * Executes the SQL and retuns a subset of the results in a dynamic - * TPagedList that can be used to automatically scroll through results - * from a database table. - * - * Runs paged list query with row delegate - * Example: $sqlmap->queryForPagedListWithRowDelegate('getAccounts', array($this, 'rowHandler')); - * - * @param string The name of the sql statement to execute. - * @param callback Row delegate handler, a valid callback required. - * @param mixed The object used to set the parameters in the SQL. - * @param integer The maximum number of objects to store in each page. + * @return TPagedList A PaginatedList of beans containing the rows. + */ + public function queryForPagedList($statementName, $parameter=null, $pageSize=10, $page=0) + { + $statement = $this->getSqlMapManager()->getMappedStatement($statementName); + return new TSqlMapPagedList($statement, $parameter, $pageSize, null, $page); + } + + /** + * Executes the SQL and retuns a subset of the results in a dynamic + * TPagedList that can be used to automatically scroll through results + * from a database table. + * + * Runs paged list query with row delegate + * Example: $sqlmap->queryForPagedListWithRowDelegate('getAccounts', array($this, 'rowHandler')); + * + * @param string The name of the sql statement to execute. + * @param callback Row delegate handler, a valid callback required. + * @param mixed The object used to set the parameters in the SQL. + * @param integer The maximum number of objects to store in each page. * @param integer The number of the page to initially load into the list. - * @return TPagedList A PaginatedList of beans containing the rows. - */ - public function queryForPagedListWithRowDelegate($statementName,$delegate, $parameter=null, $pageSize=10, $page=0) - { - $statement = $this->getSqlMapManager()->getMappedStatement($statementName); - return new TSqlMapPagedList($statement, $parameter, $pageSize, $delegate,$page); - } - - - /** - * Executes the SQL and retuns all rows selected in a map that is keyed on - * the property named in the keyProperty parameter. The value at each key - * will be the value of the property specified in the valueProperty - * parameter. If valueProperty is null, the entire result object will be - * entered. - * @param string The name of the sql statement to execute. - * @param mixed The object used to set the parameters in the SQL. - * @param string The property of the result object to be used as the key. - * @param string The property of the result object to be used as the value. - * @return TMap Array object containing the rows keyed by keyProperty. - */ - public function queryForMap($statementName, $parameter=null, $keyProperty=null, $valueProperty=null, $skip=-1, $max=-1) - { - $statement = $this->getSqlMapManager()->getMappedStatement($statementName); - return $statement->executeQueryForMap($this->getDbConnection(), $parameter, $keyProperty, $valueProperty, $skip, $max); - } - - /** - * Runs a query with a custom object that gets a chance to deal - * with each row as it is processed. - * - * Example: $sqlmap->queryForMapWithRowDelegate('getAccounts', array($this, 'rowHandler')); - * - * @param string The name of the sql statement to execute. - * @param callback Row delegate handler, a valid callback required. - * @param mixed The object used to set the parameters in the SQL. - * @param string The property of the result object to be used as the key. - * @param string The property of the result object to be used as the value. - * @return TMap Array object containing the rows keyed by keyProperty. - */ - public function queryForMapWithRowDelegate($statementName, $delegate, $parameter=null, $keyProperty=null, $valueProperty=null, $skip=-1, $max=-1) - { - $statement = $this->getSqlMapManager()->getMappedStatement($statementName); - return $statement->executeQueryForMap($this->getDbConnection(), $parameter, $keyProperty, $valueProperty, $skip, $max, $delegate); - } - - /** - * Executes a Sql INSERT statement. - * - * Insert is a bit different from other update methods, as it provides - * facilities for returning the primary key of the newly inserted row - * (rather than the effected rows), - * - * The parameter object is generally used to supply the input data for the - * INSERT values. - * - * @param string The name of the statement to execute. - * @param string The parameter object. - * @return mixed The primary key of the newly inserted row. - * This might be automatically generated by the RDBMS, - * or selected from a sequence table or other source. - */ - public function insert($statementName, $parameter=null) - { - $statement = $this->getSqlMapManager()->getMappedStatement($statementName); - return $statement->executeInsert($this->getDbConnection(), $parameter); - } - - /** - * Executes a Sql UPDATE statement. - * - * Update can also be used for any other update statement type, such as - * inserts and deletes. Update returns the number of rows effected. - * - * The parameter object is generally used to supply the input data for the - * UPDATE values as well as the WHERE clause parameter(s). - * - * @param string The name of the statement to execute. - * @param mixed The parameter object. - * @return integer The number of rows effected. - */ - public function update($statementName, $parameter=null) - { - $statement = $this->getSqlMapManager()->getMappedStatement($statementName); - return $statement->executeUpdate($this->getDbConnection(), $parameter); - } - - /** - * Executes a Sql DELETE statement. Delete returns the number of rows effected. - * @param string The name of the statement to execute. - * @param mixed The parameter object. - * @return integer The number of rows effected. - */ - public function delete($statementName, $parameter=null) - { - return $this->update($statementName, $parameter); - } - - /** - * Flushes all cached objects that belong to this SqlMap - */ - public function flushCaches() - { - $this->getSqlMapManager()->flushCacheModels(); - } - - /** - * @param TSqlMapTypeHandler new type handler. - */ - public function registerTypeHandler($typeHandler) - { - $this->getSqlMapManager()->getTypeHandlers()->registerTypeHandler($typeHandler); - } -} - + * @return TPagedList A PaginatedList of beans containing the rows. + */ + public function queryForPagedListWithRowDelegate($statementName,$delegate, $parameter=null, $pageSize=10, $page=0) + { + $statement = $this->getSqlMapManager()->getMappedStatement($statementName); + return new TSqlMapPagedList($statement, $parameter, $pageSize, $delegate,$page); + } + + + /** + * Executes the SQL and retuns all rows selected in a map that is keyed on + * the property named in the keyProperty parameter. The value at each key + * will be the value of the property specified in the valueProperty + * parameter. If valueProperty is null, the entire result object will be + * entered. + * @param string The name of the sql statement to execute. + * @param mixed The object used to set the parameters in the SQL. + * @param string The property of the result object to be used as the key. + * @param string The property of the result object to be used as the value. + * @return TMap Array object containing the rows keyed by keyProperty. + */ + public function queryForMap($statementName, $parameter=null, $keyProperty=null, $valueProperty=null, $skip=-1, $max=-1) + { + $statement = $this->getSqlMapManager()->getMappedStatement($statementName); + return $statement->executeQueryForMap($this->getDbConnection(), $parameter, $keyProperty, $valueProperty, $skip, $max); + } + + /** + * Runs a query with a custom object that gets a chance to deal + * with each row as it is processed. + * + * Example: $sqlmap->queryForMapWithRowDelegate('getAccounts', array($this, 'rowHandler')); + * + * @param string The name of the sql statement to execute. + * @param callback Row delegate handler, a valid callback required. + * @param mixed The object used to set the parameters in the SQL. + * @param string The property of the result object to be used as the key. + * @param string The property of the result object to be used as the value. + * @return TMap Array object containing the rows keyed by keyProperty. + */ + public function queryForMapWithRowDelegate($statementName, $delegate, $parameter=null, $keyProperty=null, $valueProperty=null, $skip=-1, $max=-1) + { + $statement = $this->getSqlMapManager()->getMappedStatement($statementName); + return $statement->executeQueryForMap($this->getDbConnection(), $parameter, $keyProperty, $valueProperty, $skip, $max, $delegate); + } + + /** + * Executes a Sql INSERT statement. + * + * Insert is a bit different from other update methods, as it provides + * facilities for returning the primary key of the newly inserted row + * (rather than the effected rows), + * + * The parameter object is generally used to supply the input data for the + * INSERT values. + * + * @param string The name of the statement to execute. + * @param string The parameter object. + * @return mixed The primary key of the newly inserted row. + * This might be automatically generated by the RDBMS, + * or selected from a sequence table or other source. + */ + public function insert($statementName, $parameter=null) + { + $statement = $this->getSqlMapManager()->getMappedStatement($statementName); + return $statement->executeInsert($this->getDbConnection(), $parameter); + } + + /** + * Executes a Sql UPDATE statement. + * + * Update can also be used for any other update statement type, such as + * inserts and deletes. Update returns the number of rows effected. + * + * The parameter object is generally used to supply the input data for the + * UPDATE values as well as the WHERE clause parameter(s). + * + * @param string The name of the statement to execute. + * @param mixed The parameter object. + * @return integer The number of rows effected. + */ + public function update($statementName, $parameter=null) + { + $statement = $this->getSqlMapManager()->getMappedStatement($statementName); + return $statement->executeUpdate($this->getDbConnection(), $parameter); + } + + /** + * Executes a Sql DELETE statement. Delete returns the number of rows effected. + * @param string The name of the statement to execute. + * @param mixed The parameter object. + * @return integer The number of rows effected. + */ + public function delete($statementName, $parameter=null) + { + return $this->update($statementName, $parameter); + } + + /** + * Flushes all cached objects that belong to this SqlMap + */ + public function flushCaches() + { + $this->getSqlMapManager()->flushCacheModels(); + } + + /** + * @param TSqlMapTypeHandler new type handler. + */ + public function registerTypeHandler($typeHandler) + { + $this->getSqlMapManager()->getTypeHandlers()->registerTypeHandler($typeHandler); + } +} + -- cgit v1.2.3