[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