BUG 000 PM tables ver2 ready - propel & phing integration

This commit is contained in:
Erik Amaru Ortiz
2011-08-29 11:39:22 -04:00
parent 5b0da08227
commit f7fcd0472d
46 changed files with 826 additions and 5278 deletions

View File

@@ -1,78 +0,0 @@
<?php
require_once PATH_THIRDPARTY . 'propel/map/MapBuilder.php';
include_once PATH_THIRDPARTY . 'creole/CreoleTypes.php';
/**
* This class adds structure of '{tableName}' table to '{connection}' DatabaseMap object.
*
*
*
* These statically-built map classes are used by Propel to do runtime db structure discovery.
* For example, the createSelectSql() method checks the type of a given column used in an
* ORDER BY clause to know whether it needs to apply SQL to make the ORDER BY case-insensitive
* (i.e. if it's a text column type).
*
* @package classes.model.map
*/
class {className}MapBuilder {
/**
* The (dot-path) name of this class
*/
const CLASS_NAME = 'classes.model.map.{className}MapBuilder';
/**
* The database map.
*/
private $dbMap;
/**
* Tells us if this DatabaseMapBuilder is built so that we
* don't have to re-build it every time.
*
* @return boolean true if this DatabaseMapBuilder is built, false otherwise.
*/
public function isBuilt()
{
return ($this->dbMap !== null);
}
/**
* Gets the databasemap this map builder built.
*
* @return the databasemap
*/
public function getDatabaseMap()
{
return $this->dbMap;
}
/**
* The doBuild() method builds the DatabaseMap
*
* @return void
* @throws PropelException
*/
public function doBuild()
{
$this->dbMap = Propel::getDatabaseMap('{connection}');
$tMap = $this->dbMap->addTable('{tableName}');
$tMap->setPhpName('{className}');
$tMap->setUseIdGenerator({useIdGenerator});
<!-- START BLOCK : primaryKeys -->
$tMap->addPrimaryKey('{name}', '{phpName}', '{type}', CreoleTypes::{creoleType}, {notNull}, {size});
<!-- END BLOCK : primaryKeys -->
<!-- START BLOCK : columnsWhitoutKeys -->
$tMap->addColumn('{name}', '{phpName}', '{type}', CreoleTypes::{creoleType}, {notNull}, {size});
<!-- END BLOCK : columnsWhitoutKeys -->
} // doBuild()
} // {className}MapBuilder