]> git.andy128k.dev Git - ipf-legacy-orm.git/commitdiff
make setTableDefinition a static method
authorAndrey Kutejko <andy128k@gmail.com>
Sat, 27 Jul 2013 20:48:59 +0000 (23:48 +0300)
committerAndrey Kutejko <andy128k@gmail.com>
Sat, 27 Jul 2013 20:48:59 +0000 (23:48 +0300)
ipf/orm/import/builder.php
ipf/orm/record/abstract.php
ipf/orm/table.php

index 9cf200a7854d2d2c424f2552a842b6a13b5ca0bd..6e3bc0f99d9132e4977cf463e0a587b9b4d56d76 100644 (file)
@@ -21,13 +21,12 @@ class IPF_ORM_Import_Builder
         }
 
         $ret = array(
-            '  public function setTableDefinition()',
+            '  public static function setTableDefinition(IPF_ORM_Table $table)',
             '  {',
-            '    $table = $this->getTable();',
         );
 
         if (isset($definition['inheritance']['type']) && $definition['inheritance']['type'] == 'concrete')
-            $ret[] = "    parent::setTableDefinition();";
+            $ret[] = '    parent::setTableDefinition($table);';
 
         if (isset($definition['tableName']) && !empty($definition['tableName']))
             $ret[] = "    ".'$table->setTableName(\''. $definition['tableName'].'\');';
index dc9f4a7c1006ddc171006dd6944701e25db7443b..3276a677921a3f3c3188db509dbd7bd9141e97c7 100644 (file)
@@ -4,7 +4,7 @@ abstract class IPF_ORM_Record_Abstract extends IPF_ORM_Access
 {
     protected $_table;
 
-    public function setTableDefinition()
+    public static function setTableDefinition(IPF_ORM_Table $table)
     {
     }
 
index e91896a5c168292f046e153d219e8b24e17865ab..aec975a2ecd6a07c181432f813f43914a96f00c7 100644 (file)
@@ -55,8 +55,7 @@ class IPF_ORM_Table extends IPF_ORM_Configurable implements Countable
         $this->initParents($name);
 
         // create database table
-        $record = new $name($this);
-        $record->setTableDefinition();
+        $name::setTableDefinition($this);
 
         $this->columnCount = count($this->_columns);
 
@@ -66,6 +65,7 @@ class IPF_ORM_Table extends IPF_ORM_Configurable implements Countable
 
         $this->initIdentifier();
 
+        $record = new $name($this);
         $record->setUp();
 
         $this->_filters[]  = new IPF_ORM_Record_Filter_Standard();