PageRenderTime 37ms CodeModel.GetById 10ms RepoModel.GetById 0ms app.codeStats 1ms

/oiserver/plugins/sfGuardPlugin/lib/model/om/BasesfGuardPermissionPeer.php

http://openirudi.googlecode.com/
PHP | 469 lines | 337 code | 132 blank | 0 comment | 49 complexity | 4a6f9581a63e49092e0fdb035b8ca178 MD5 | raw file
Possible License(s): LGPL-2.1, AGPL-3.0
  1. <?php
  2. abstract class BasesfGuardPermissionPeer {
  3. const DATABASE_NAME = 'propel';
  4. const TABLE_NAME = 'sf_guard_permission';
  5. const CLASS_DEFAULT = 'plugins.sfGuardPlugin.lib.model.sfGuardPermission';
  6. const NUM_COLUMNS = 3;
  7. const NUM_LAZY_LOAD_COLUMNS = 0;
  8. const ID = 'sf_guard_permission.ID';
  9. const NAME = 'sf_guard_permission.NAME';
  10. const DESCRIPTION = 'sf_guard_permission.DESCRIPTION';
  11. public static $instances = array();
  12. private static $mapBuilder = null;
  13. private static $fieldNames = array (
  14. BasePeer::TYPE_PHPNAME => array ('Id', 'Name', 'Description', ),
  15. BasePeer::TYPE_STUDLYPHPNAME => array ('id', 'name', 'description', ),
  16. BasePeer::TYPE_COLNAME => array (self::ID, self::NAME, self::DESCRIPTION, ),
  17. BasePeer::TYPE_FIELDNAME => array ('id', 'name', 'description', ),
  18. BasePeer::TYPE_NUM => array (0, 1, 2, )
  19. );
  20. private static $fieldKeys = array (
  21. BasePeer::TYPE_PHPNAME => array ('Id' => 0, 'Name' => 1, 'Description' => 2, ),
  22. BasePeer::TYPE_STUDLYPHPNAME => array ('id' => 0, 'name' => 1, 'description' => 2, ),
  23. BasePeer::TYPE_COLNAME => array (self::ID => 0, self::NAME => 1, self::DESCRIPTION => 2, ),
  24. BasePeer::TYPE_FIELDNAME => array ('id' => 0, 'name' => 1, 'description' => 2, ),
  25. BasePeer::TYPE_NUM => array (0, 1, 2, )
  26. );
  27. public static function getMapBuilder()
  28. {
  29. if (self::$mapBuilder === null) {
  30. self::$mapBuilder = new sfGuardPermissionMapBuilder();
  31. }
  32. return self::$mapBuilder;
  33. }
  34. static public function translateFieldName($name, $fromType, $toType)
  35. {
  36. $toNames = self::getFieldNames($toType);
  37. $key = isset(self::$fieldKeys[$fromType][$name]) ? self::$fieldKeys[$fromType][$name] : null;
  38. if ($key === null) {
  39. throw new PropelException("'$name' could not be found in the field names of type '$fromType'. These are: " . print_r(self::$fieldKeys[$fromType], true));
  40. }
  41. return $toNames[$key];
  42. }
  43. static public function getFieldNames($type = BasePeer::TYPE_PHPNAME)
  44. {
  45. if (!array_key_exists($type, self::$fieldNames)) {
  46. throw new PropelException('Method getFieldNames() expects the parameter $type to be one of the class constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME, BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. ' . $type . ' was given.');
  47. }
  48. return self::$fieldNames[$type];
  49. }
  50. public static function alias($alias, $column)
  51. {
  52. return str_replace(sfGuardPermissionPeer::TABLE_NAME.'.', $alias.'.', $column);
  53. }
  54. public static function addSelectColumns(Criteria $criteria)
  55. {
  56. $criteria->addSelectColumn(sfGuardPermissionPeer::ID);
  57. $criteria->addSelectColumn(sfGuardPermissionPeer::NAME);
  58. $criteria->addSelectColumn(sfGuardPermissionPeer::DESCRIPTION);
  59. }
  60. public static function doCount(Criteria $criteria, $distinct = false, PropelPDO $con = null)
  61. {
  62. $criteria = clone $criteria;
  63. $criteria->setPrimaryTableName(sfGuardPermissionPeer::TABLE_NAME);
  64. if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
  65. $criteria->setDistinct();
  66. }
  67. if (!$criteria->hasSelectClause()) {
  68. sfGuardPermissionPeer::addSelectColumns($criteria);
  69. }
  70. $criteria->clearOrderByColumns(); $criteria->setDbName(self::DATABASE_NAME);
  71. if ($con === null) {
  72. $con = Propel::getConnection(sfGuardPermissionPeer::DATABASE_NAME, Propel::CONNECTION_READ);
  73. }
  74. $stmt = BasePeer::doCount($criteria, $con);
  75. if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
  76. $count = (int) $row[0];
  77. } else {
  78. $count = 0; }
  79. $stmt->closeCursor();
  80. return $count;
  81. }
  82. public static function doSelectOne(Criteria $criteria, PropelPDO $con = null)
  83. {
  84. $critcopy = clone $criteria;
  85. $critcopy->setLimit(1);
  86. $objects = sfGuardPermissionPeer::doSelect($critcopy, $con);
  87. if ($objects) {
  88. return $objects[0];
  89. }
  90. return null;
  91. }
  92. public static function doSelect(Criteria $criteria, PropelPDO $con = null)
  93. {
  94. return sfGuardPermissionPeer::populateObjects(sfGuardPermissionPeer::doSelectStmt($criteria, $con));
  95. }
  96. public static function doSelectStmt(Criteria $criteria, PropelPDO $con = null)
  97. {
  98. if ($con === null) {
  99. $con = Propel::getConnection(sfGuardPermissionPeer::DATABASE_NAME, Propel::CONNECTION_READ);
  100. }
  101. if (!$criteria->hasSelectClause()) {
  102. $criteria = clone $criteria;
  103. sfGuardPermissionPeer::addSelectColumns($criteria);
  104. }
  105. $criteria->setDbName(self::DATABASE_NAME);
  106. return BasePeer::doSelect($criteria, $con);
  107. }
  108. public static function addInstanceToPool(sfGuardPermission $obj, $key = null)
  109. {
  110. if (Propel::isInstancePoolingEnabled()) {
  111. if ($key === null) {
  112. $key = (string) $obj->getId();
  113. } self::$instances[$key] = $obj;
  114. }
  115. }
  116. public static function removeInstanceFromPool($value)
  117. {
  118. if (Propel::isInstancePoolingEnabled() && $value !== null) {
  119. if (is_object($value) && $value instanceof sfGuardPermission) {
  120. $key = (string) $value->getId();
  121. } elseif (is_scalar($value)) {
  122. $key = (string) $value;
  123. } else {
  124. $e = new PropelException("Invalid value passed to removeInstanceFromPool(). Expected primary key or sfGuardPermission object; got " . (is_object($value) ? get_class($value) . ' object.' : var_export($value,true)));
  125. throw $e;
  126. }
  127. unset(self::$instances[$key]);
  128. }
  129. }
  130. public static function getInstanceFromPool($key)
  131. {
  132. if (Propel::isInstancePoolingEnabled()) {
  133. if (isset(self::$instances[$key])) {
  134. return self::$instances[$key];
  135. }
  136. }
  137. return null; }
  138. public static function clearInstancePool()
  139. {
  140. self::$instances = array();
  141. }
  142. public static function getPrimaryKeyHashFromRow($row, $startcol = 0)
  143. {
  144. if ($row[$startcol + 0] === null) {
  145. return null;
  146. }
  147. return (string) $row[$startcol + 0];
  148. }
  149. public static function populateObjects(PDOStatement $stmt)
  150. {
  151. $results = array();
  152. $cls = sfGuardPermissionPeer::getOMClass();
  153. $cls = substr('.'.$cls, strrpos('.'.$cls, '.') + 1);
  154. while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
  155. $key = sfGuardPermissionPeer::getPrimaryKeyHashFromRow($row, 0);
  156. if (null !== ($obj = sfGuardPermissionPeer::getInstanceFromPool($key))) {
  157. $results[] = $obj;
  158. } else {
  159. $obj = new $cls();
  160. $obj->hydrate($row);
  161. $results[] = $obj;
  162. sfGuardPermissionPeer::addInstanceToPool($obj, $key);
  163. } }
  164. $stmt->closeCursor();
  165. return $results;
  166. }
  167. static public function getUniqueColumnNames()
  168. {
  169. return array(array('name'));
  170. }
  171. public static function getTableMap()
  172. {
  173. return Propel::getDatabaseMap(self::DATABASE_NAME)->getTable(self::TABLE_NAME);
  174. }
  175. public static function getOMClass()
  176. {
  177. return sfGuardPermissionPeer::CLASS_DEFAULT;
  178. }
  179. public static function doInsert($values, PropelPDO $con = null)
  180. {
  181. if ($con === null) {
  182. $con = Propel::getConnection(sfGuardPermissionPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
  183. }
  184. if ($values instanceof Criteria) {
  185. $criteria = clone $values; } else {
  186. $criteria = $values->buildCriteria(); }
  187. if ($criteria->containsKey(sfGuardPermissionPeer::ID) && $criteria->keyContainsValue(sfGuardPermissionPeer::ID) ) {
  188. throw new PropelException('Cannot insert a value for auto-increment primary key ('.sfGuardPermissionPeer::ID.')');
  189. }
  190. $criteria->setDbName(self::DATABASE_NAME);
  191. try {
  192. $con->beginTransaction();
  193. $pk = BasePeer::doInsert($criteria, $con);
  194. $con->commit();
  195. } catch(PropelException $e) {
  196. $con->rollBack();
  197. throw $e;
  198. }
  199. return $pk;
  200. }
  201. public static function doUpdate($values, PropelPDO $con = null)
  202. {
  203. if ($con === null) {
  204. $con = Propel::getConnection(sfGuardPermissionPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
  205. }
  206. $selectCriteria = new Criteria(self::DATABASE_NAME);
  207. if ($values instanceof Criteria) {
  208. $criteria = clone $values;
  209. $comparison = $criteria->getComparison(sfGuardPermissionPeer::ID);
  210. $selectCriteria->add(sfGuardPermissionPeer::ID, $criteria->remove(sfGuardPermissionPeer::ID), $comparison);
  211. } else { $criteria = $values->buildCriteria(); $selectCriteria = $values->buildPkeyCriteria(); }
  212. $criteria->setDbName(self::DATABASE_NAME);
  213. return BasePeer::doUpdate($selectCriteria, $criteria, $con);
  214. }
  215. public static function doDeleteAll($con = null)
  216. {
  217. if ($con === null) {
  218. $con = Propel::getConnection(sfGuardPermissionPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
  219. }
  220. $affectedRows = 0; try {
  221. $con->beginTransaction();
  222. $affectedRows += sfGuardPermissionPeer::doOnDeleteCascade(new Criteria(sfGuardPermissionPeer::DATABASE_NAME), $con);
  223. $affectedRows += BasePeer::doDeleteAll(sfGuardPermissionPeer::TABLE_NAME, $con);
  224. $con->commit();
  225. return $affectedRows;
  226. } catch (PropelException $e) {
  227. $con->rollBack();
  228. throw $e;
  229. }
  230. }
  231. public static function doDelete($values, PropelPDO $con = null)
  232. {
  233. if ($con === null) {
  234. $con = Propel::getConnection(sfGuardPermissionPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
  235. }
  236. if ($values instanceof Criteria) {
  237. sfGuardPermissionPeer::clearInstancePool();
  238. $criteria = clone $values;
  239. } elseif ($values instanceof sfGuardPermission) {
  240. sfGuardPermissionPeer::removeInstanceFromPool($values);
  241. $criteria = $values->buildPkeyCriteria();
  242. } else {
  243. $criteria = new Criteria(self::DATABASE_NAME);
  244. $criteria->add(sfGuardPermissionPeer::ID, (array) $values, Criteria::IN);
  245. foreach ((array) $values as $singleval) {
  246. sfGuardPermissionPeer::removeInstanceFromPool($singleval);
  247. }
  248. }
  249. $criteria->setDbName(self::DATABASE_NAME);
  250. $affectedRows = 0;
  251. try {
  252. $con->beginTransaction();
  253. $affectedRows += sfGuardPermissionPeer::doOnDeleteCascade($criteria, $con);
  254. if ($values instanceof Criteria) {
  255. sfGuardPermissionPeer::clearInstancePool();
  256. } else { sfGuardPermissionPeer::removeInstanceFromPool($values);
  257. }
  258. $affectedRows += BasePeer::doDelete($criteria, $con);
  259. sfGuardGroupPermissionPeer::clearInstancePool();
  260. sfGuardUserPermissionPeer::clearInstancePool();
  261. $con->commit();
  262. return $affectedRows;
  263. } catch (PropelException $e) {
  264. $con->rollBack();
  265. throw $e;
  266. }
  267. }
  268. protected static function doOnDeleteCascade(Criteria $criteria, PropelPDO $con)
  269. {
  270. $affectedRows = 0;
  271. $objects = sfGuardPermissionPeer::doSelect($criteria, $con);
  272. foreach ($objects as $obj) {
  273. $c = new Criteria(sfGuardGroupPermissionPeer::DATABASE_NAME);
  274. $c->add(sfGuardGroupPermissionPeer::PERMISSION_ID, $obj->getId());
  275. $affectedRows += sfGuardGroupPermissionPeer::doDelete($c, $con);
  276. $c = new Criteria(sfGuardUserPermissionPeer::DATABASE_NAME);
  277. $c->add(sfGuardUserPermissionPeer::PERMISSION_ID, $obj->getId());
  278. $affectedRows += sfGuardUserPermissionPeer::doDelete($c, $con);
  279. }
  280. return $affectedRows;
  281. }
  282. public static function doValidate(sfGuardPermission $obj, $cols = null)
  283. {
  284. $columns = array();
  285. if ($cols) {
  286. $dbMap = Propel::getDatabaseMap(sfGuardPermissionPeer::DATABASE_NAME);
  287. $tableMap = $dbMap->getTable(sfGuardPermissionPeer::TABLE_NAME);
  288. if (! is_array($cols)) {
  289. $cols = array($cols);
  290. }
  291. foreach ($cols as $colName) {
  292. if ($tableMap->containsColumn($colName)) {
  293. $get = 'get' . $tableMap->getColumn($colName)->getPhpName();
  294. $columns[$colName] = $obj->$get();
  295. }
  296. }
  297. } else {
  298. }
  299. $res = BasePeer::doValidate(sfGuardPermissionPeer::DATABASE_NAME, sfGuardPermissionPeer::TABLE_NAME, $columns);
  300. if ($res !== true) {
  301. $request = sfContext::getInstance()->getRequest();
  302. foreach ($res as $failed) {
  303. $col = sfGuardPermissionPeer::translateFieldname($failed->getColumn(), BasePeer::TYPE_COLNAME, BasePeer::TYPE_PHPNAME);
  304. }
  305. }
  306. return $res;
  307. }
  308. public static function retrieveByPK($pk, PropelPDO $con = null)
  309. {
  310. if (null !== ($obj = sfGuardPermissionPeer::getInstanceFromPool((string) $pk))) {
  311. return $obj;
  312. }
  313. if ($con === null) {
  314. $con = Propel::getConnection(sfGuardPermissionPeer::DATABASE_NAME, Propel::CONNECTION_READ);
  315. }
  316. $criteria = new Criteria(sfGuardPermissionPeer::DATABASE_NAME);
  317. $criteria->add(sfGuardPermissionPeer::ID, $pk);
  318. $v = sfGuardPermissionPeer::doSelect($criteria, $con);
  319. return !empty($v) > 0 ? $v[0] : null;
  320. }
  321. public static function retrieveByPKs($pks, PropelPDO $con = null)
  322. {
  323. if ($con === null) {
  324. $con = Propel::getConnection(sfGuardPermissionPeer::DATABASE_NAME, Propel::CONNECTION_READ);
  325. }
  326. $objs = null;
  327. if (empty($pks)) {
  328. $objs = array();
  329. } else {
  330. $criteria = new Criteria(sfGuardPermissionPeer::DATABASE_NAME);
  331. $criteria->add(sfGuardPermissionPeer::ID, $pks, Criteria::IN);
  332. $objs = sfGuardPermissionPeer::doSelect($criteria, $con);
  333. }
  334. return $objs;
  335. }
  336. }
  337. Propel::getDatabaseMap(BasesfGuardPermissionPeer::DATABASE_NAME)->addTableBuilder(BasesfGuardPermissionPeer::TABLE_NAME, BasesfGuardPermissionPeer::getMapBuilder());