[limb-svn] r6714 - in 3.x/trunk/limb/active_record: src tests/cases
svn at limb-project.com
svn at limb-project.com
Mon Jan 21 14:54:13 MSK 2008
Author: serega
Date: 2008-01-21 14:54:13 +0300 (Mon, 21 Jan 2008)
New Revision: 6714
URL: http://fisheye.limb-project.com/changelog/limb/?cs=6714
Modified:
3.x/trunk/limb/active_record/src/lmbARQuery.class.php
3.x/trunk/limb/active_record/tests/cases/lmbARQueryTest.class.php
Log:
-- lmbARQuery :: join() -> joinRelation(), lmbARQuery :: attach() -> attachRelation() since join() is reserved for sql left joins
Modified: 3.x/trunk/limb/active_record/src/lmbARQuery.class.php
===================================================================
--- 3.x/trunk/limb/active_record/src/lmbARQuery.class.php 2008-01-21 10:31:21 UTC (rev 6713)
+++ 3.x/trunk/limb/active_record/src/lmbARQuery.class.php 2008-01-21 11:54:13 UTC (rev 6714)
@@ -12,22 +12,22 @@
class lmbARQuery extends lmbSelectRawQuery
{
- protected $_base_class_name;
- protected $_base_object;
- protected $_join = array();
- protected $_attach = array();
- protected $_sort_params = array();
+ protected $base_class_name;
+ protected $base_object;
+ protected $join_relations = array();
+ protected $attach_relations = array();
+ protected $sort_params = array();
function __construct($base_class_name, $conn, $sql = '')
{
- $this->_base_class_name = $base_class_name;
- $this->_base_object = new $this->_base_class_name(null, $conn);
+ $this->base_class_name = $base_class_name;
+ $this->base_object = new $this->base_class_name(null, $conn);
if(!$sql)
{
parent :: __construct($conn);
- $this->addTable($this->_base_object->getTableName());
- $this->_addFieldsForObject($this->_base_object);
+ $this->addTable($this->base_object->getTableName());
+ $this->_addFieldsForObject($this->base_object);
}
else
{
@@ -35,16 +35,16 @@
}
}
- function join($relation_name, $params = array())
+ function joinRelation($relation_name, $params = array())
{
- $this->_join[$relation_name] = $params;
+ $this->join_relations[$relation_name] = $params;
return $this;
}
- function attach($relation_name, $params = array())
+ function attachRelation($relation_name, $params = array())
{
- $this->_attach[$relation_name] = $params;
+ $this->attach_relations[$relation_name] = $params;
return $this;
}
@@ -58,27 +58,25 @@
function addOrder($field, $type='ASC')
{
if(is_array($field))
- {
- $this->_sort_params = $this->_sort_params + $field;
- }
+ $this->sort_params = $this->sort_params + $field;
else
- $this->_sort_params[$field] = $type;
+ $this->sort_params[$field] = $type;
}
function fetch($decorate = true)
{
- $this->_applyJoins($this->_base_object, $this->_join);
+ $this->_applyJoins($this->base_object, $this->join_relations);
$rs = parent :: fetch();
if($decorate)
- $rs = new lmbARRecordSetDecorator($rs, $this->_base_class_name, $this->_conn);
+ $rs = new lmbARRecordSetDecorator($rs, $this->base_class_name, $this->_conn);
$rs = $this->_decorateWithJoinDecorator($rs);
$rs = $this->_decorateWithAttachDecorator($rs);
- $rs->sort($this->_sort_params);
+ $rs->sort($this->sort_params);
return $rs;
}
@@ -137,16 +135,16 @@
protected function _decorateWithJoinDecorator($rs)
{
- if(count($this->_join))
- return new lmbARRecordSetJoinDecorator($rs, $this->_base_object, $this->_conn, $this->_join);
+ if(count($this->join_relations))
+ return new lmbARRecordSetJoinDecorator($rs, $this->base_object, $this->_conn, $this->join_relations);
else
return $rs;
}
protected function _decorateWithAttachDecorator($rs)
{
- if(count($this->_attach))
- return new lmbARRecordSetAttachDecorator($rs, $this->_base_object, $this->_conn, $this->_attach);
+ if(count($this->attach_relations))
+ return new lmbARRecordSetAttachDecorator($rs, $this->base_object, $this->_conn, $this->attach_relations);
else
return $rs;
}
@@ -187,9 +185,9 @@
foreach($join as $relation_name=> $params_or_relation_name)
{
if(is_numeric($relation_name))
- $query->join(trim($params_or_relation_name));
+ $query->joinRelation(trim($params_or_relation_name));
else
- $query->join(trim($relation_name), $params_or_relation_name);
+ $query->joinRelation(trim($relation_name), $params_or_relation_name);
}
$attach = (isset($params['attach']) && $params['attach']) ? $params['attach'] : array();
@@ -199,9 +197,9 @@
foreach($attach as $relation_name => $params_or_relation_name)
{
if(is_numeric($relation_name))
- $query->attach(trim($params_or_relation_name));
+ $query->attachRelation(trim($params_or_relation_name));
else
- $query->attach(trim($relation_name), $params_or_relation_name);
+ $query->attachRelation(trim($relation_name), $params_or_relation_name);
}
return $query;
Modified: 3.x/trunk/limb/active_record/tests/cases/lmbARQueryTest.class.php
===================================================================
--- 3.x/trunk/limb/active_record/tests/cases/lmbARQueryTest.class.php 2008-01-21 10:31:21 UTC (rev 6713)
+++ 3.x/trunk/limb/active_record/tests/cases/lmbARQueryTest.class.php 2008-01-21 11:54:13 UTC (rev 6714)
@@ -55,7 +55,7 @@
$this->conn->resetStats();
$query = lmbARQuery :: create('PersonForTest', array(), $this->conn);
- $query->join('social_security');
+ $query->joinRelation('social_security');
$iterator = $query->fetch();
$arr = $iterator->getArray();
@@ -89,7 +89,7 @@
$this->conn->resetStats();
$query = lmbARQuery :: create('SocialSecurityForTest', array(), $this->conn);
- $query->join('person');
+ $query->joinRelation('person');
$iterator = $query->fetch();
$arr = $iterator->getArray();
@@ -124,7 +124,7 @@
$this->conn->resetStats();
$query = lmbARQuery :: create('LectureForTest', array(), $this->conn);
- $query->join('course');
+ $query->joinRelation('course');
$iterator = $query->fetch();
$arr = $iterator->getArray();
@@ -162,7 +162,7 @@
$query = lmbARQuery :: create('PersonForTest', array(), $this->conn);
// note attach() has the same effect as join() but workds is a different way - it produces another sql request
- $iterator = $query->attach('social_security')->fetch();
+ $iterator = $query->attachRelation('social_security')->fetch();
$arr = $iterator->getArray();
$this->assertEqual($this->conn->countQueries(), 2);
@@ -198,7 +198,7 @@
$query = lmbARQuery :: create('SocialSecurityForTest', array(), $this->conn);
// note attach() has the same effect as join() but workds is a different way - it produces another sql request
- $arr = $query->attach('person')->fetch()->getArray();
+ $arr = $query->attachRelation('person')->fetch()->getArray();
$this->assertEqual($this->conn->countQueries(), 2);
@@ -234,7 +234,7 @@
$this->conn->resetStats();
$query = lmbARQuery :: create('LectureForTest', array(), $this->conn);
- $arr = $query->attach('course')->attach('alt_course')->fetch()->getArray();
+ $arr = $query->attachRelation('course')->attachRelation('alt_course')->fetch()->getArray();
$this->assertEqual($this->conn->countQueries(), 3);
@@ -280,7 +280,7 @@
$this->conn->resetStats();
$query = lmbARQuery :: create('CourseForTest', array(), $this->conn);
- $arr = $query->attach('lectures', array('sort' => array('title' => 'ASC')))->fetch()->getArray();
+ $arr = $query->attachRelation('lectures', array('sort' => array('title' => 'ASC')))->fetch()->getArray();
$this->assertEqual($this->conn->countQueries(), 2);
@@ -326,7 +326,7 @@
$this->conn->resetStats();
$query = lmbARQuery :: create('UserForTest', array(), $this->conn);
- $arr = $query->attach('groups', array('sort' => array('title' => 'DESC')))->fetch()->getArray();
+ $arr = $query->attachRelation('groups', array('sort' => array('title' => 'DESC')))->fetch()->getArray();
$this->assertEqual($this->conn->countQueries(), 2);
@@ -374,7 +374,7 @@
$query = lmbARQuery :: create('CourseForTest', array(), $this->conn);
$query->where(lmbSQLCriteria :: in('id', array($course1->getId(), $course2->getId())));
- $rs = $query->attach('lectures', array('join' => 'alt_course'))->fetch();
+ $rs = $query->attachRelation('lectures', array('join' => 'alt_course'))->fetch();
$arr = $rs->getArray();
$this->assertEqual($this->conn->countQueries(), 2);
@@ -429,7 +429,7 @@
$query = lmbARQuery :: create('LectureForTest', array(), $this->conn);
$query->where(lmbSQLCriteria :: equal('course_id', $course1->getId()));
- $iterator = $query->join('alt_course', array('attach' => 'lectures'))->fetch();
+ $iterator = $query->joinRelation('alt_course', array('attach' => 'lectures'))->fetch();
$arr = $iterator->getArray();
$this->assertEqual($this->conn->countQueries(), 2);
@@ -485,7 +485,7 @@
$query = lmbARQuery :: create('CourseForTest', array(), $this->conn);
$query->where(lmbSQLCriteria :: in('id', array($course1->getId(), $course2->getId())));
- $arr = $query->attach('lectures', array('join' => array('alt_course' => array('attach' => 'lectures'))))->fetch()->getArray();
+ $arr = $query->attachRelation('lectures', array('join' => array('alt_course' => array('attach' => 'lectures'))))->fetch()->getArray();
$this->assertEqual($this->conn->countQueries(), 3);
@@ -543,7 +543,7 @@
$this->conn->resetStats();
$query = lmbARQuery :: create('LectureForTest', array(), $this->conn);
- $iterator = $query->join('course', array('join' => 'program'))->fetch();
+ $iterator = $query->joinRelation('course', array('join' => 'program'))->fetch();
$arr = $iterator->getArray();
$this->assertEqual($this->conn->countQueries(), 1);
@@ -588,7 +588,7 @@
$this->conn->resetStats();
$query = lmbARQuery :: create('ProgramForTest', array(), $this->conn);
- $iterator = $query->attach('courses', array('attach' => 'lectures'))->fetch();
+ $iterator = $query->attachRelation('courses', array('attach' => 'lectures'))->fetch();
$arr = $iterator->getArray();
@@ -640,7 +640,7 @@
$course2 = $this->creator->createCourse();
$query = lmbARQuery :: create('CourseForTest', array(), $this->conn);
- $arr = $query->join('program')->fetch()->getArray();
+ $arr = $query->joinRelation('program')->fetch()->getArray();
$this->assertEqual($arr[0]->getProgram()->getTitle(), $program->getTitle());
$this->assertNull($arr[1]->getProgram());
@@ -654,7 +654,7 @@
$this->conn->resetStats();
$query = lmbARQuery :: create('ProgramForTest', array(), $this->conn);
- $arr = $query->attach('courses')->fetch()->getArray();
+ $arr = $query->attachRelation('courses')->fetch()->getArray();
$this->assertEqual($this->conn->countQueries(), 2);
@@ -674,7 +674,7 @@
$program2 = $this->creator->createProgram();
$query = lmbARQuery :: create('ProgramForTest', array(), $this->conn);
- $query->join('courses');
+ $query->joinRelation('courses');
try
{
$it = $query->fetch();
@@ -694,7 +694,7 @@
$this->conn->resetStats();
$query = lmbARQuery :: create('CourseForTest', array(), $this->conn);
- $arr = $query->attach('program')->fetch()->getArray();
+ $arr = $query->attachRelation('program')->fetch()->getArray();
$this->assertEqual($this->conn->countQueries(), 2);
More information about the limb-svn
mailing list