/lib/model/om/BaseInterestPeer.php
PHP | 1487 lines | 748 code | 250 blank | 489 comment | 117 complexity | 4717c594461caa7bcf5587aefdc1fdfb MD5 | raw file
Possible License(s): ISC
Large files files are truncated, but you can click here to view the full file
- <?php
- /**
- * Base static class for performing query and update operations on the 'interest' table.
- *
- *
- *
- * This class was autogenerated by Propel 1.4.2 on:
- *
- * 04/15/13 20:46:43
- *
- * @package lib.model.om
- */
- abstract class BaseInterestPeer {
- /** the default database name for this class */
- const DATABASE_NAME = 'propel';
- /** the table name for this class */
- const TABLE_NAME = 'interest';
- /** the related Propel class for this table */
- const OM_CLASS = 'Interest';
- /** A class that can be returned by this peer. */
- const CLASS_DEFAULT = 'lib.model.Interest';
- /** the related TableMap class for this table */
- const TM_CLASS = 'InterestTableMap';
-
- /** The total number of columns. */
- const NUM_COLUMNS = 10;
- /** The number of lazy-loaded columns. */
- const NUM_LAZY_LOAD_COLUMNS = 0;
- /** the column name for the INT_ID2 field */
- const INT_ID2 = 'interest.INT_ID2';
- /** the column name for the USE_ID2 field */
- const USE_ID2 = 'interest.USE_ID2';
- /** the column name for the USE_ID field */
- const USE_ID = 'interest.USE_ID';
- /** the column name for the INT_ID field */
- const INT_ID = 'interest.INT_ID';
- /** the column name for the CON_ID field */
- const CON_ID = 'interest.CON_ID';
- /** the column name for the INT_NAME field */
- const INT_NAME = 'interest.INT_NAME';
- /** the column name for the INT_CATEGORY field */
- const INT_CATEGORY = 'interest.INT_CATEGORY';
- /** the column name for the INT_CREATED_TIME field */
- const INT_CREATED_TIME = 'interest.INT_CREATED_TIME';
- /** the column name for the CREATED_AT field */
- const CREATED_AT = 'interest.CREATED_AT';
- /** the column name for the UPDATED_AT field */
- const UPDATED_AT = 'interest.UPDATED_AT';
- /**
- * An identiy map to hold any loaded instances of Interest objects.
- * This must be public so that other peer classes can access this when hydrating from JOIN
- * queries.
- * @var array Interest[]
- */
- public static $instances = array();
- // symfony behavior
-
- /**
- * Indicates whether the current model includes I18N.
- */
- const IS_I18N = false;
- /**
- * holds an array of fieldnames
- *
- * first dimension keys are the type constants
- * e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id'
- */
- private static $fieldNames = array (
- BasePeer::TYPE_PHPNAME => array ('IntId2', 'UseId2', 'UseId', 'IntId', 'ConId', 'IntName', 'IntCategory', 'IntCreatedTime', 'CreatedAt', 'UpdatedAt', ),
- BasePeer::TYPE_STUDLYPHPNAME => array ('intId2', 'useId2', 'useId', 'intId', 'conId', 'intName', 'intCategory', 'intCreatedTime', 'createdAt', 'updatedAt', ),
- BasePeer::TYPE_COLNAME => array (self::INT_ID2, self::USE_ID2, self::USE_ID, self::INT_ID, self::CON_ID, self::INT_NAME, self::INT_CATEGORY, self::INT_CREATED_TIME, self::CREATED_AT, self::UPDATED_AT, ),
- BasePeer::TYPE_FIELDNAME => array ('int_id2', 'use_id2', 'use_id', 'int_id', 'con_id', 'int_name', 'int_category', 'int_created_time', 'created_at', 'updated_at', ),
- BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, )
- );
- /**
- * holds an array of keys for quick access to the fieldnames array
- *
- * first dimension keys are the type constants
- * e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0
- */
- private static $fieldKeys = array (
- BasePeer::TYPE_PHPNAME => array ('IntId2' => 0, 'UseId2' => 1, 'UseId' => 2, 'IntId' => 3, 'ConId' => 4, 'IntName' => 5, 'IntCategory' => 6, 'IntCreatedTime' => 7, 'CreatedAt' => 8, 'UpdatedAt' => 9, ),
- BasePeer::TYPE_STUDLYPHPNAME => array ('intId2' => 0, 'useId2' => 1, 'useId' => 2, 'intId' => 3, 'conId' => 4, 'intName' => 5, 'intCategory' => 6, 'intCreatedTime' => 7, 'createdAt' => 8, 'updatedAt' => 9, ),
- BasePeer::TYPE_COLNAME => array (self::INT_ID2 => 0, self::USE_ID2 => 1, self::USE_ID => 2, self::INT_ID => 3, self::CON_ID => 4, self::INT_NAME => 5, self::INT_CATEGORY => 6, self::INT_CREATED_TIME => 7, self::CREATED_AT => 8, self::UPDATED_AT => 9, ),
- BasePeer::TYPE_FIELDNAME => array ('int_id2' => 0, 'use_id2' => 1, 'use_id' => 2, 'int_id' => 3, 'con_id' => 4, 'int_name' => 5, 'int_category' => 6, 'int_created_time' => 7, 'created_at' => 8, 'updated_at' => 9, ),
- BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, )
- );
- /**
- * Translates a fieldname to another type
- *
- * @param string $name field name
- * @param string $fromType One of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME
- * BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM
- * @param string $toType One of the class type constants
- * @return string translated name of the field.
- * @throws PropelException - if the specified name could not be found in the fieldname mappings.
- */
- static public function translateFieldName($name, $fromType, $toType)
- {
- $toNames = self::getFieldNames($toType);
- $key = isset(self::$fieldKeys[$fromType][$name]) ? self::$fieldKeys[$fromType][$name] : null;
- if ($key === null) {
- throw new PropelException("'$name' could not be found in the field names of type '$fromType'. These are: " . print_r(self::$fieldKeys[$fromType], true));
- }
- return $toNames[$key];
- }
- /**
- * Returns an array of field names.
- *
- * @param string $type The type of fieldnames to return:
- * One of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME
- * BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM
- * @return array A list of field names
- */
- static public function getFieldNames($type = BasePeer::TYPE_PHPNAME)
- {
- if (!array_key_exists($type, self::$fieldNames)) {
- 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.');
- }
- return self::$fieldNames[$type];
- }
- /**
- * Convenience method which changes table.column to alias.column.
- *
- * Using this method you can maintain SQL abstraction while using column aliases.
- * <code>
- * $c->addAlias("alias1", TablePeer::TABLE_NAME);
- * $c->addJoin(TablePeer::alias("alias1", TablePeer::PRIMARY_KEY_COLUMN), TablePeer::PRIMARY_KEY_COLUMN);
- * </code>
- * @param string $alias The alias for the current table.
- * @param string $column The column name for current table. (i.e. InterestPeer::COLUMN_NAME).
- * @return string
- */
- public static function alias($alias, $column)
- {
- return str_replace(InterestPeer::TABLE_NAME.'.', $alias.'.', $column);
- }
- /**
- * Add all the columns needed to create a new object.
- *
- * Note: any columns that were marked with lazyLoad="true" in the
- * XML schema will not be added to the select list and only loaded
- * on demand.
- *
- * @param criteria object containing the columns to add.
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function addSelectColumns(Criteria $criteria)
- {
- $criteria->addSelectColumn(InterestPeer::INT_ID2);
- $criteria->addSelectColumn(InterestPeer::USE_ID2);
- $criteria->addSelectColumn(InterestPeer::USE_ID);
- $criteria->addSelectColumn(InterestPeer::INT_ID);
- $criteria->addSelectColumn(InterestPeer::CON_ID);
- $criteria->addSelectColumn(InterestPeer::INT_NAME);
- $criteria->addSelectColumn(InterestPeer::INT_CATEGORY);
- $criteria->addSelectColumn(InterestPeer::INT_CREATED_TIME);
- $criteria->addSelectColumn(InterestPeer::CREATED_AT);
- $criteria->addSelectColumn(InterestPeer::UPDATED_AT);
- }
- /**
- * Returns the number of rows matching criteria.
- *
- * @param Criteria $criteria
- * @param boolean $distinct Whether to select only distinct columns; deprecated: use Criteria->setDistinct() instead.
- * @param PropelPDO $con
- * @return int Number of matching rows.
- */
- public static function doCount(Criteria $criteria, $distinct = false, PropelPDO $con = null)
- {
- // we may modify criteria, so copy it first
- $criteria = clone $criteria;
- // We need to set the primary table name, since in the case that there are no WHERE columns
- // it will be impossible for the BasePeer::createSelectSql() method to determine which
- // tables go into the FROM clause.
- $criteria->setPrimaryTableName(InterestPeer::TABLE_NAME);
- if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
- $criteria->setDistinct();
- }
- if (!$criteria->hasSelectClause()) {
- InterestPeer::addSelectColumns($criteria);
- }
- $criteria->clearOrderByColumns(); // ORDER BY won't ever affect the count
- $criteria->setDbName(self::DATABASE_NAME); // Set the correct dbName
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_READ);
- }
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- // BasePeer returns a PDOStatement
- $stmt = BasePeer::doCount($criteria, $con);
- if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $count = (int) $row[0];
- } else {
- $count = 0; // no rows returned; we infer that means 0 matches.
- }
- $stmt->closeCursor();
- return $count;
- }
- /**
- * Method to select one object from the DB.
- *
- * @param Criteria $criteria object used to create the SELECT statement.
- * @param PropelPDO $con
- * @return Interest
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function doSelectOne(Criteria $criteria, PropelPDO $con = null)
- {
- $critcopy = clone $criteria;
- $critcopy->setLimit(1);
- $objects = InterestPeer::doSelect($critcopy, $con);
- if ($objects) {
- return $objects[0];
- }
- return null;
- }
- /**
- * Method to do selects.
- *
- * @param Criteria $criteria The Criteria object used to build the SELECT statement.
- * @param PropelPDO $con
- * @return array Array of selected Objects
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function doSelect(Criteria $criteria, PropelPDO $con = null)
- {
- return InterestPeer::populateObjects(InterestPeer::doSelectStmt($criteria, $con));
- }
- /**
- * Prepares the Criteria object and uses the parent doSelect() method to execute a PDOStatement.
- *
- * Use this method directly if you want to work with an executed statement durirectly (for example
- * to perform your own object hydration).
- *
- * @param Criteria $criteria The Criteria object used to build the SELECT statement.
- * @param PropelPDO $con The connection to use
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- * @return PDOStatement The executed PDOStatement object.
- * @see BasePeer::doSelect()
- */
- public static function doSelectStmt(Criteria $criteria, PropelPDO $con = null)
- {
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_READ);
- }
- if (!$criteria->hasSelectClause()) {
- $criteria = clone $criteria;
- InterestPeer::addSelectColumns($criteria);
- }
- // Set the correct dbName
- $criteria->setDbName(self::DATABASE_NAME);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- // BasePeer returns a PDOStatement
- return BasePeer::doSelect($criteria, $con);
- }
- /**
- * Adds an object to the instance pool.
- *
- * Propel keeps cached copies of objects in an instance pool when they are retrieved
- * from the database. In some cases -- especially when you override doSelect*()
- * methods in your stub classes -- you may need to explicitly add objects
- * to the cache in order to ensure that the same objects are always returned by doSelect*()
- * and retrieveByPK*() calls.
- *
- * @param Interest $value A Interest object.
- * @param string $key (optional) key to use for instance map (for performance boost if key was already calculated externally).
- */
- public static function addInstanceToPool(Interest $obj, $key = null)
- {
- if (Propel::isInstancePoolingEnabled()) {
- if ($key === null) {
- $key = (string) $obj->getIntId2();
- } // if key === null
- self::$instances[$key] = $obj;
- }
- }
- /**
- * Removes an object from the instance pool.
- *
- * Propel keeps cached copies of objects in an instance pool when they are retrieved
- * from the database. In some cases -- especially when you override doDelete
- * methods in your stub classes -- you may need to explicitly remove objects
- * from the cache in order to prevent returning objects that no longer exist.
- *
- * @param mixed $value A Interest object or a primary key value.
- */
- public static function removeInstanceFromPool($value)
- {
- if (Propel::isInstancePoolingEnabled() && $value !== null) {
- if (is_object($value) && $value instanceof Interest) {
- $key = (string) $value->getIntId2();
- } elseif (is_scalar($value)) {
- // assume we've been passed a primary key
- $key = (string) $value;
- } else {
- $e = new PropelException("Invalid value passed to removeInstanceFromPool(). Expected primary key or Interest object; got " . (is_object($value) ? get_class($value) . ' object.' : var_export($value,true)));
- throw $e;
- }
- unset(self::$instances[$key]);
- }
- } // removeInstanceFromPool()
- /**
- * Retrieves a string version of the primary key from the DB resultset row that can be used to uniquely identify a row in this table.
- *
- * For tables with a single-column primary key, that simple pkey value will be returned. For tables with
- * a multi-column primary key, a serialize()d version of the primary key will be returned.
- *
- * @param string $key The key (@see getPrimaryKeyHash()) for this instance.
- * @return Interest Found object or NULL if 1) no instance exists for specified key or 2) instance pooling has been disabled.
- * @see getPrimaryKeyHash()
- */
- public static function getInstanceFromPool($key)
- {
- if (Propel::isInstancePoolingEnabled()) {
- if (isset(self::$instances[$key])) {
- return self::$instances[$key];
- }
- }
- return null; // just to be explicit
- }
-
- /**
- * Clear the instance pool.
- *
- * @return void
- */
- public static function clearInstancePool()
- {
- self::$instances = array();
- }
-
- /**
- * Method to invalidate the instance pool of all tables related to interest
- * by a foreign key with ON DELETE CASCADE
- */
- public static function clearRelatedInstancePool()
- {
- }
- /**
- * Retrieves a string version of the primary key from the DB resultset row that can be used to uniquely identify a row in this table.
- *
- * For tables with a single-column primary key, that simple pkey value will be returned. For tables with
- * a multi-column primary key, a serialize()d version of the primary key will be returned.
- *
- * @param array $row PropelPDO resultset row.
- * @param int $startcol The 0-based offset for reading from the resultset row.
- * @return string A string version of PK or NULL if the components of primary key in result array are all null.
- */
- public static function getPrimaryKeyHashFromRow($row, $startcol = 0)
- {
- // If the PK cannot be derived from the row, return NULL.
- if ($row[$startcol] === null) {
- return null;
- }
- return (string) $row[$startcol];
- }
- /**
- * The returned array will contain objects of the default type or
- * objects that inherit from the default.
- *
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function populateObjects(PDOStatement $stmt)
- {
- $results = array();
-
- // set the class once to avoid overhead in the loop
- $cls = InterestPeer::getOMClass(false);
- // populate the object(s)
- while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $key = InterestPeer::getPrimaryKeyHashFromRow($row, 0);
- if (null !== ($obj = InterestPeer::getInstanceFromPool($key))) {
- // We no longer rehydrate the object, since this can cause data loss.
- // See http://propel.phpdb.org/trac/ticket/509
- // $obj->hydrate($row, 0, true); // rehydrate
- $results[] = $obj;
- } else {
- $obj = new $cls();
- $obj->hydrate($row);
- $results[] = $obj;
- InterestPeer::addInstanceToPool($obj, $key);
- } // if key exists
- }
- $stmt->closeCursor();
- return $results;
- }
- /**
- * Returns the number of rows matching criteria, joining the related Concurso table
- *
- * @param Criteria $criteria
- * @param boolean $distinct Whether to select only distinct columns; deprecated: use Criteria->setDistinct() instead.
- * @param PropelPDO $con
- * @param String $join_behavior the type of joins to use, defaults to Criteria::LEFT_JOIN
- * @return int Number of matching rows.
- */
- public static function doCountJoinConcurso(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
- {
- // we're going to modify criteria, so copy it first
- $criteria = clone $criteria;
- // We need to set the primary table name, since in the case that there are no WHERE columns
- // it will be impossible for the BasePeer::createSelectSql() method to determine which
- // tables go into the FROM clause.
- $criteria->setPrimaryTableName(InterestPeer::TABLE_NAME);
- if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
- $criteria->setDistinct();
- }
- if (!$criteria->hasSelectClause()) {
- InterestPeer::addSelectColumns($criteria);
- }
-
- $criteria->clearOrderByColumns(); // ORDER BY won't ever affect the count
-
- // Set the correct dbName
- $criteria->setDbName(self::DATABASE_NAME);
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_READ);
- }
- $criteria->addJoin(InterestPeer::CON_ID, ConcursoPeer::CON_ID, $join_behavior);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- $stmt = BasePeer::doCount($criteria, $con);
- if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $count = (int) $row[0];
- } else {
- $count = 0; // no rows returned; we infer that means 0 matches.
- }
- $stmt->closeCursor();
- return $count;
- }
- /**
- * Returns the number of rows matching criteria, joining the related Users table
- *
- * @param Criteria $criteria
- * @param boolean $distinct Whether to select only distinct columns; deprecated: use Criteria->setDistinct() instead.
- * @param PropelPDO $con
- * @param String $join_behavior the type of joins to use, defaults to Criteria::LEFT_JOIN
- * @return int Number of matching rows.
- */
- public static function doCountJoinUsers(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
- {
- // we're going to modify criteria, so copy it first
- $criteria = clone $criteria;
- // We need to set the primary table name, since in the case that there are no WHERE columns
- // it will be impossible for the BasePeer::createSelectSql() method to determine which
- // tables go into the FROM clause.
- $criteria->setPrimaryTableName(InterestPeer::TABLE_NAME);
- if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
- $criteria->setDistinct();
- }
- if (!$criteria->hasSelectClause()) {
- InterestPeer::addSelectColumns($criteria);
- }
-
- $criteria->clearOrderByColumns(); // ORDER BY won't ever affect the count
-
- // Set the correct dbName
- $criteria->setDbName(self::DATABASE_NAME);
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_READ);
- }
- $criteria->addJoin(InterestPeer::USE_ID2, UsersPeer::USE_ID2, $join_behavior);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- $stmt = BasePeer::doCount($criteria, $con);
- if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $count = (int) $row[0];
- } else {
- $count = 0; // no rows returned; we infer that means 0 matches.
- }
- $stmt->closeCursor();
- return $count;
- }
- /**
- * Selects a collection of Interest objects pre-filled with their Concurso objects.
- * @param Criteria $criteria
- * @param PropelPDO $con
- * @param String $join_behavior the type of joins to use, defaults to Criteria::LEFT_JOIN
- * @return array Array of Interest objects.
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function doSelectJoinConcurso(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
- {
- $criteria = clone $criteria;
- // Set the correct dbName if it has not been overridden
- if ($criteria->getDbName() == Propel::getDefaultDB()) {
- $criteria->setDbName(self::DATABASE_NAME);
- }
- InterestPeer::addSelectColumns($criteria);
- $startcol = (InterestPeer::NUM_COLUMNS - InterestPeer::NUM_LAZY_LOAD_COLUMNS);
- ConcursoPeer::addSelectColumns($criteria);
- $criteria->addJoin(InterestPeer::CON_ID, ConcursoPeer::CON_ID, $join_behavior);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- $stmt = BasePeer::doSelect($criteria, $con);
- $results = array();
- while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $key1 = InterestPeer::getPrimaryKeyHashFromRow($row, 0);
- if (null !== ($obj1 = InterestPeer::getInstanceFromPool($key1))) {
- // We no longer rehydrate the object, since this can cause data loss.
- // See http://propel.phpdb.org/trac/ticket/509
- // $obj1->hydrate($row, 0, true); // rehydrate
- } else {
- $cls = InterestPeer::getOMClass(false);
- $obj1 = new $cls();
- $obj1->hydrate($row);
- InterestPeer::addInstanceToPool($obj1, $key1);
- } // if $obj1 already loaded
- $key2 = ConcursoPeer::getPrimaryKeyHashFromRow($row, $startcol);
- if ($key2 !== null) {
- $obj2 = ConcursoPeer::getInstanceFromPool($key2);
- if (!$obj2) {
- $cls = ConcursoPeer::getOMClass(false);
- $obj2 = new $cls();
- $obj2->hydrate($row, $startcol);
- ConcursoPeer::addInstanceToPool($obj2, $key2);
- } // if obj2 already loaded
-
- // Add the $obj1 (Interest) to $obj2 (Concurso)
- $obj2->addInterest($obj1);
- } // if joined row was not null
- $results[] = $obj1;
- }
- $stmt->closeCursor();
- return $results;
- }
- /**
- * Selects a collection of Interest objects pre-filled with their Users objects.
- * @param Criteria $criteria
- * @param PropelPDO $con
- * @param String $join_behavior the type of joins to use, defaults to Criteria::LEFT_JOIN
- * @return array Array of Interest objects.
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function doSelectJoinUsers(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
- {
- $criteria = clone $criteria;
- // Set the correct dbName if it has not been overridden
- if ($criteria->getDbName() == Propel::getDefaultDB()) {
- $criteria->setDbName(self::DATABASE_NAME);
- }
- InterestPeer::addSelectColumns($criteria);
- $startcol = (InterestPeer::NUM_COLUMNS - InterestPeer::NUM_LAZY_LOAD_COLUMNS);
- UsersPeer::addSelectColumns($criteria);
- $criteria->addJoin(InterestPeer::USE_ID2, UsersPeer::USE_ID2, $join_behavior);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- $stmt = BasePeer::doSelect($criteria, $con);
- $results = array();
- while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $key1 = InterestPeer::getPrimaryKeyHashFromRow($row, 0);
- if (null !== ($obj1 = InterestPeer::getInstanceFromPool($key1))) {
- // We no longer rehydrate the object, since this can cause data loss.
- // See http://propel.phpdb.org/trac/ticket/509
- // $obj1->hydrate($row, 0, true); // rehydrate
- } else {
- $cls = InterestPeer::getOMClass(false);
- $obj1 = new $cls();
- $obj1->hydrate($row);
- InterestPeer::addInstanceToPool($obj1, $key1);
- } // if $obj1 already loaded
- $key2 = UsersPeer::getPrimaryKeyHashFromRow($row, $startcol);
- if ($key2 !== null) {
- $obj2 = UsersPeer::getInstanceFromPool($key2);
- if (!$obj2) {
- $cls = UsersPeer::getOMClass(false);
- $obj2 = new $cls();
- $obj2->hydrate($row, $startcol);
- UsersPeer::addInstanceToPool($obj2, $key2);
- } // if obj2 already loaded
-
- // Add the $obj1 (Interest) to $obj2 (Users)
- $obj2->addInterest($obj1);
- } // if joined row was not null
- $results[] = $obj1;
- }
- $stmt->closeCursor();
- return $results;
- }
- /**
- * Returns the number of rows matching criteria, joining all related tables
- *
- * @param Criteria $criteria
- * @param boolean $distinct Whether to select only distinct columns; deprecated: use Criteria->setDistinct() instead.
- * @param PropelPDO $con
- * @param String $join_behavior the type of joins to use, defaults to Criteria::LEFT_JOIN
- * @return int Number of matching rows.
- */
- public static function doCountJoinAll(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
- {
- // we're going to modify criteria, so copy it first
- $criteria = clone $criteria;
- // We need to set the primary table name, since in the case that there are no WHERE columns
- // it will be impossible for the BasePeer::createSelectSql() method to determine which
- // tables go into the FROM clause.
- $criteria->setPrimaryTableName(InterestPeer::TABLE_NAME);
- if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
- $criteria->setDistinct();
- }
- if (!$criteria->hasSelectClause()) {
- InterestPeer::addSelectColumns($criteria);
- }
-
- $criteria->clearOrderByColumns(); // ORDER BY won't ever affect the count
-
- // Set the correct dbName
- $criteria->setDbName(self::DATABASE_NAME);
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_READ);
- }
- $criteria->addJoin(InterestPeer::CON_ID, ConcursoPeer::CON_ID, $join_behavior);
- $criteria->addJoin(InterestPeer::USE_ID2, UsersPeer::USE_ID2, $join_behavior);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- $stmt = BasePeer::doCount($criteria, $con);
- if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $count = (int) $row[0];
- } else {
- $count = 0; // no rows returned; we infer that means 0 matches.
- }
- $stmt->closeCursor();
- return $count;
- }
- /**
- * Selects a collection of Interest objects pre-filled with all related objects.
- *
- * @param Criteria $criteria
- * @param PropelPDO $con
- * @param String $join_behavior the type of joins to use, defaults to Criteria::LEFT_JOIN
- * @return array Array of Interest objects.
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function doSelectJoinAll(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
- {
- $criteria = clone $criteria;
- // Set the correct dbName if it has not been overridden
- if ($criteria->getDbName() == Propel::getDefaultDB()) {
- $criteria->setDbName(self::DATABASE_NAME);
- }
- InterestPeer::addSelectColumns($criteria);
- $startcol2 = (InterestPeer::NUM_COLUMNS - InterestPeer::NUM_LAZY_LOAD_COLUMNS);
- ConcursoPeer::addSelectColumns($criteria);
- $startcol3 = $startcol2 + (ConcursoPeer::NUM_COLUMNS - ConcursoPeer::NUM_LAZY_LOAD_COLUMNS);
- UsersPeer::addSelectColumns($criteria);
- $startcol4 = $startcol3 + (UsersPeer::NUM_COLUMNS - UsersPeer::NUM_LAZY_LOAD_COLUMNS);
- $criteria->addJoin(InterestPeer::CON_ID, ConcursoPeer::CON_ID, $join_behavior);
- $criteria->addJoin(InterestPeer::USE_ID2, UsersPeer::USE_ID2, $join_behavior);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- $stmt = BasePeer::doSelect($criteria, $con);
- $results = array();
- while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $key1 = InterestPeer::getPrimaryKeyHashFromRow($row, 0);
- if (null !== ($obj1 = InterestPeer::getInstanceFromPool($key1))) {
- // We no longer rehydrate the object, since this can cause data loss.
- // See http://propel.phpdb.org/trac/ticket/509
- // $obj1->hydrate($row, 0, true); // rehydrate
- } else {
- $cls = InterestPeer::getOMClass(false);
- $obj1 = new $cls();
- $obj1->hydrate($row);
- InterestPeer::addInstanceToPool($obj1, $key1);
- } // if obj1 already loaded
- // Add objects for joined Concurso rows
- $key2 = ConcursoPeer::getPrimaryKeyHashFromRow($row, $startcol2);
- if ($key2 !== null) {
- $obj2 = ConcursoPeer::getInstanceFromPool($key2);
- if (!$obj2) {
- $cls = ConcursoPeer::getOMClass(false);
- $obj2 = new $cls();
- $obj2->hydrate($row, $startcol2);
- ConcursoPeer::addInstanceToPool($obj2, $key2);
- } // if obj2 loaded
- // Add the $obj1 (Interest) to the collection in $obj2 (Concurso)
- $obj2->addInterest($obj1);
- } // if joined row not null
- // Add objects for joined Users rows
- $key3 = UsersPeer::getPrimaryKeyHashFromRow($row, $startcol3);
- if ($key3 !== null) {
- $obj3 = UsersPeer::getInstanceFromPool($key3);
- if (!$obj3) {
- $cls = UsersPeer::getOMClass(false);
- $obj3 = new $cls();
- $obj3->hydrate($row, $startcol3);
- UsersPeer::addInstanceToPool($obj3, $key3);
- } // if obj3 loaded
- // Add the $obj1 (Interest) to the collection in $obj3 (Users)
- $obj3->addInterest($obj1);
- } // if joined row not null
- $results[] = $obj1;
- }
- $stmt->closeCursor();
- return $results;
- }
- /**
- * Returns the number of rows matching criteria, joining the related Concurso table
- *
- * @param Criteria $criteria
- * @param boolean $distinct Whether to select only distinct columns; deprecated: use Criteria->setDistinct() instead.
- * @param PropelPDO $con
- * @param String $join_behavior the type of joins to use, defaults to Criteria::LEFT_JOIN
- * @return int Number of matching rows.
- */
- public static function doCountJoinAllExceptConcurso(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
- {
- // we're going to modify criteria, so copy it first
- $criteria = clone $criteria;
- // We need to set the primary table name, since in the case that there are no WHERE columns
- // it will be impossible for the BasePeer::createSelectSql() method to determine which
- // tables go into the FROM clause.
- $criteria->setPrimaryTableName(InterestPeer::TABLE_NAME);
-
- if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
- $criteria->setDistinct();
- }
- if (!$criteria->hasSelectClause()) {
- InterestPeer::addSelectColumns($criteria);
- }
-
- $criteria->clearOrderByColumns(); // ORDER BY should not affect count
-
- // Set the correct dbName
- $criteria->setDbName(self::DATABASE_NAME);
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_READ);
- }
-
- $criteria->addJoin(InterestPeer::USE_ID2, UsersPeer::USE_ID2, $join_behavior);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- $stmt = BasePeer::doCount($criteria, $con);
- if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $count = (int) $row[0];
- } else {
- $count = 0; // no rows returned; we infer that means 0 matches.
- }
- $stmt->closeCursor();
- return $count;
- }
- /**
- * Returns the number of rows matching criteria, joining the related Users table
- *
- * @param Criteria $criteria
- * @param boolean $distinct Whether to select only distinct columns; deprecated: use Criteria->setDistinct() instead.
- * @param PropelPDO $con
- * @param String $join_behavior the type of joins to use, defaults to Criteria::LEFT_JOIN
- * @return int Number of matching rows.
- */
- public static function doCountJoinAllExceptUsers(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
- {
- // we're going to modify criteria, so copy it first
- $criteria = clone $criteria;
- // We need to set the primary table name, since in the case that there are no WHERE columns
- // it will be impossible for the BasePeer::createSelectSql() method to determine which
- // tables go into the FROM clause.
- $criteria->setPrimaryTableName(InterestPeer::TABLE_NAME);
-
- if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
- $criteria->setDistinct();
- }
- if (!$criteria->hasSelectClause()) {
- InterestPeer::addSelectColumns($criteria);
- }
-
- $criteria->clearOrderByColumns(); // ORDER BY should not affect count
-
- // Set the correct dbName
- $criteria->setDbName(self::DATABASE_NAME);
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_READ);
- }
-
- $criteria->addJoin(InterestPeer::CON_ID, ConcursoPeer::CON_ID, $join_behavior);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- $stmt = BasePeer::doCount($criteria, $con);
- if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $count = (int) $row[0];
- } else {
- $count = 0; // no rows returned; we infer that means 0 matches.
- }
- $stmt->closeCursor();
- return $count;
- }
- /**
- * Selects a collection of Interest objects pre-filled with all related objects except Concurso.
- *
- * @param Criteria $criteria
- * @param PropelPDO $con
- * @param String $join_behavior the type of joins to use, defaults to Criteria::LEFT_JOIN
- * @return array Array of Interest objects.
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function doSelectJoinAllExceptConcurso(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
- {
- $criteria = clone $criteria;
- // Set the correct dbName if it has not been overridden
- // $criteria->getDbName() will return the same object if not set to another value
- // so == check is okay and faster
- if ($criteria->getDbName() == Propel::getDefaultDB()) {
- $criteria->setDbName(self::DATABASE_NAME);
- }
- InterestPeer::addSelectColumns($criteria);
- $startcol2 = (InterestPeer::NUM_COLUMNS - InterestPeer::NUM_LAZY_LOAD_COLUMNS);
- UsersPeer::addSelectColumns($criteria);
- $startcol3 = $startcol2 + (UsersPeer::NUM_COLUMNS - UsersPeer::NUM_LAZY_LOAD_COLUMNS);
- $criteria->addJoin(InterestPeer::USE_ID2, UsersPeer::USE_ID2, $join_behavior);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- $stmt = BasePeer::doSelect($criteria, $con);
- $results = array();
- while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $key1 = InterestPeer::getPrimaryKeyHashFromRow($row, 0);
- if (null !== ($obj1 = InterestPeer::getInstanceFromPool($key1))) {
- // We no longer rehydrate the object, since this can cause data loss.
- // See http://propel.phpdb.org/trac/ticket/509
- // $obj1->hydrate($row, 0, true); // rehydrate
- } else {
- $cls = InterestPeer::getOMClass(false);
- $obj1 = new $cls();
- $obj1->hydrate($row);
- InterestPeer::addInstanceToPool($obj1, $key1);
- } // if obj1 already loaded
- // Add objects for joined Users rows
- $key2 = UsersPeer::getPrimaryKeyHashFromRow($row, $startcol2);
- if ($key2 !== null) {
- $obj2 = UsersPeer::getInstanceFromPool($key2);
- if (!$obj2) {
-
- $cls = UsersPeer::getOMClass(false);
- $obj2 = new $cls();
- $obj2->hydrate($row, $startcol2);
- UsersPeer::addInstanceToPool($obj2, $key2);
- } // if $obj2 already loaded
- // Add the $obj1 (Interest) to the collection in $obj2 (Users)
- $obj2->addInterest($obj1);
- } // if joined row is not null
- $results[] = $obj1;
- }
- $stmt->closeCursor();
- return $results;
- }
- /**
- * Selects a collection of Interest objects pre-filled with all related objects except Users.
- *
- * @param Criteria $criteria
- * @param PropelPDO $con
- * @param String $join_behavior the type of joins to use, defaults to Criteria::LEFT_JOIN
- * @return array Array of Interest objects.
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function doSelectJoinAllExceptUsers(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
- {
- $criteria = clone $criteria;
- // Set the correct dbName if it has not been overridden
- // $criteria->getDbName() will return the same object if not set to another value
- // so == check is okay and faster
- if ($criteria->getDbName() == Propel::getDefaultDB()) {
- $criteria->setDbName(self::DATABASE_NAME);
- }
- InterestPeer::addSelectColumns($criteria);
- $startcol2 = (InterestPeer::NUM_COLUMNS - InterestPeer::NUM_LAZY_LOAD_COLUMNS);
- ConcursoPeer::addSelectColumns($criteria);
- $startcol3 = $startcol2 + (ConcursoPeer::NUM_COLUMNS - ConcursoPeer::NUM_LAZY_LOAD_COLUMNS);
- $criteria->addJoin(InterestPeer::CON_ID, ConcursoPeer::CON_ID, $join_behavior);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables(self::getMixerPreSelectHook(__FUNCTION__)) as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $criteria, $con);
- }
- $stmt = BasePeer::doSelect($criteria, $con);
- $results = array();
- while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
- $key1 = InterestPeer::getPrimaryKeyHashFromRow($row, 0);
- if (null !== ($obj1 = InterestPeer::getInstanceFromPool($key1))) {
- // We no longer rehydrate the object, since this can cause data loss.
- // See http://propel.phpdb.org/trac/ticket/509
- // $obj1->hydrate($row, 0, true); // rehydrate
- } else {
- $cls = InterestPeer::getOMClass(false);
- $obj1 = new $cls();
- $obj1->hydrate($row);
- InterestPeer::addInstanceToPool($obj1, $key1);
- } // if obj1 already loaded
- // Add objects for joined Concurso rows
- $key2 = ConcursoPeer::getPrimaryKeyHashFromRow($row, $startcol2);
- if ($key2 !== null) {
- $obj2 = ConcursoPeer::getInstanceFromPool($key2);
- if (!$obj2) {
-
- $cls = ConcursoPeer::getOMClass(false);
- $obj2 = new $cls();
- $obj2->hydrate($row, $startcol2);
- ConcursoPeer::addInstanceToPool($obj2, $key2);
- } // if $obj2 already loaded
- // Add the $obj1 (Interest) to the collection in $obj2 (Concurso)
- $obj2->addInterest($obj1);
- } // if joined row is not null
- $results[] = $obj1;
- }
- $stmt->closeCursor();
- return $results;
- }
- /**
- * Returns the TableMap related to this peer.
- * This method is not needed for general use but a specific application could have a need.
- * @return TableMap
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function getTableMap()
- {
- return Propel::getDatabaseMap(self::DATABASE_NAME)->getTable(self::TABLE_NAME);
- }
- /**
- * Add a TableMap instance to the database for this peer class.
- */
- public static function buildTableMap()
- {
- $dbMap = Propel::getDatabaseMap(BaseInterestPeer::DATABASE_NAME);
- if (!$dbMap->hasTable(BaseInterestPeer::TABLE_NAME))
- {
- $dbMap->addTableObject(new InterestTableMap());
- }
- }
- /**
- * The class that the Peer will make instances of.
- *
- * If $withPrefix is true, the returned path
- * uses a dot-path notation which is tranalted into a path
- * relative to a location on the PHP include_path.
- * (e.g. path.to.MyClass -> 'path/to/MyClass.php')
- *
- * @param boolean Whether or not to return the path wit hthe class name
- * @return string path.to.ClassName
- */
- public static function getOMClass($withPrefix = true)
- {
- return $withPrefix ? InterestPeer::CLASS_DEFAULT : InterestPeer::OM_CLASS;
- }
- /**
- * Method perform an INSERT on the database, given a Interest or Criteria object.
- *
- * @param mixed $values Criteria or Interest object containing data that is used to create the INSERT statement.
- * @param PropelPDO $con the PropelPDO connection to use
- * @return mixed The new primary key.
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function doInsert($values, PropelPDO $con = null)
- {
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables('BaseInterestPeer:doInsert:pre') as $sf_hook)
- {
- if (false !== $sf_hook_retval = call_user_func($sf_hook, 'BaseInterestPeer', $values, $con))
- {
- return $sf_hook_retval;
- }
- }
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
- }
- if ($values instanceof Criteria) {
- $criteria = clone $values; // rename for clarity
- } else {
- $criteria = $values->buildCriteria(); // build Criteria from Interest object
- }
- if ($criteria->containsKey(InterestPeer::INT_ID2) && $criteria->keyContainsValue(InterestPeer::INT_ID2) ) {
- throw new PropelException('Cannot insert a value for auto-increment primary key ('.InterestPeer::INT_ID2.')');
- }
- // Set the correct dbName
- $criteria->setDbName(self::DATABASE_NAME);
- try {
- // use transaction because $criteria could contain info
- // for more than one table (I guess, conceivably)
- $con->beginTransaction();
- $pk = BasePeer::doInsert($criteria, $con);
- $con->commit();
- } catch(PropelException $e) {
- $con->rollBack();
- throw $e;
- }
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables('BaseInterestPeer:doInsert:post') as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $values, $con, $pk);
- }
- return $pk;
- }
- /**
- * Method perform an UPDATE on the database, given a Interest or Criteria object.
- *
- * @param mixed $values Criteria or Interest object containing data that is used to create the UPDATE statement.
- * @param PropelPDO $con The connection to use (specify PropelPDO connection object to exert more control over transactions).
- * @return int The number of affected rows (if supported by underlying database driver).
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function doUpdate($values, PropelPDO $con = null)
- {
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables('BaseInterestPeer:doUpdate:pre') as $sf_hook)
- {
- if (false !== $sf_hook_retval = call_user_func($sf_hook, 'BaseInterestPeer', $values, $con))
- {
- return $sf_hook_retval;
- }
- }
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
- }
- $selectCriteria = new Criteria(self::DATABASE_NAME);
- if ($values instanceof Criteria) {
- $criteria = clone $values; // rename for clarity
- $comparison = $criteria->getComparison(InterestPeer::INT_ID2);
- $selectCriteria->add(InterestPeer::INT_ID2, $criteria->remove(InterestPeer::INT_ID2), $comparison);
- } else { // $values is Interest object
- $criteria = $values->buildCriteria(); // gets full criteria
- $selectCriteria = $values->buildPkeyCriteria(); // gets criteria w/ primary key(s)
- }
- // set the correct dbName
- $criteria->setDbName(self::DATABASE_NAME);
- $ret = BasePeer::doUpdate($selectCriteria, $criteria, $con);
- // symfony_behaviors behavior
- foreach (sfMixer::getCallables('BaseInterestPeer:doUpdate:post') as $sf_hook)
- {
- call_user_func($sf_hook, 'BaseInterestPeer', $values, $con, $ret);
- }
- return $ret;
- }
- /**
- * Method to DELETE all rows from the interest table.
- *
- * @return int The number of affected rows (if supported by underlying database driver).
- */
- public static function doDeleteAll($con = null)
- {
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
- }
- $affectedRows = 0; // initialize var to track total num of affected rows
- try {
- // use transaction because $criteria could contain info
- // for more than one table or we could emulating ON DELETE CASCADE, etc.
- $con->beginTransaction();
- $affectedRows += BasePeer::doDeleteAll(InterestPeer::TABLE_NAME, $con);
- // Because this db requires some delete cascade/set null emulation, we have to
- // clear the cached instance *after* the emulation has happened (since
- // instances get re-added by the select statement contained therein).
- InterestPeer::clearInstancePool();
- InterestPeer::clearRelatedInstancePool();
- $con->commit();
- return $affectedRows;
- } catch (PropelException $e) {
- $con->rollBack();
- throw $e;
- }
- }
- /**
- * Method perform a DELETE on the database, given a Interest or Criteria object OR a primary key value.
- *
- * @param mixed $values Criteria or Interest object or primary key or array of primary keys
- * which is used to create the DELETE statement
- * @param PropelPDO $con the connection to use
- * @return int The number of affected rows (if supported by underlying database driver). This includes CASCADE-related rows
- * if supported by native driver or if emulated using Propel.
- * @throws PropelException Any exceptions caught during processing will be
- * rethrown wrapped into a PropelException.
- */
- public static function doDelete($values, PropelPDO $con = null)
- {
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
- }
- if ($values instanceof Criteria) {
- // invalidate the cache for all objects of this type, since we have no
- // way of knowing (without running a query) what objects should be invalidated
- // from the cache based on this Criteria.
- InterestPeer::clearInstancePool();
- // rename for clarity
- $criteria = clone $values;
- } elseif ($values instanceof Interest) { // it's a model object
- // invalidate the cache for this single object
- InterestPeer::removeInstanceFromPool($values);
- // create criteria based on pk values
- $criteria = $values->buildPkeyCriteria();
- } else { // it's a primary key, or an array of pks
- $criteria = new Criteria(self::DATABASE_NAME);
- $criteria->add(InterestPeer::INT_ID2, (array) $values, Criteria::IN);
- // invalidate the cache for this object(s)
- foreach ((array) $values as $singleval) {
- InterestPeer::removeInstanceFromPool($singleval);
- }
- }
- // Set the correct dbName
- $criteria->setDbName(self::DATABASE_NAME);
- $affectedRows = 0; // initialize var to track total num of affected rows
- try {
- // use transaction because $criteria could contain info
- // for more than one table or we could emulating ON DELETE CASCADE, etc.
- $con->beginTransaction();
-
- $affectedRows += BasePeer::doDelete($criteria, $con);
- InterestPeer::clearRelatedInstancePool();
- $con->commit();
- return $affectedRows;
- } catch (PropelException $e) {
- $con->rollBack();
- throw $e;
- }
- }
- /**
- * Validates all modified columns of given Interest object.
- * If parameter $columns is either a single column name or an array of column names
- * than only those columns are validated.
- *
- * NOTICE: This does not apply to primary or foreign keys for now.
- *
- * @param Interest $obj The object to validate.
- * @param mixed $cols Column name or array of column names.
- *
- * @return mixed TRUE if all columns are valid or the error message of the first invalid column.
- */
- public static function doValidate(Interest $obj, $cols = null)
- {
- $columns = array();
- if ($cols) {
- $dbMap = Propel::getDatabaseMap(InterestPeer::DATABASE_NAME);
- $tableMap = $dbMap->getTable(InterestPeer::TABLE_NAME);
- if (! is_array($cols)) {
- $cols = array($cols);
- }
- foreach ($cols as $colName) {
- if ($tableMap->containsColumn($colName)) {
- $get = 'get' . $tableMap->getColumn($colName)->getPhpName();
- $columns[$colName] = $obj->$get();
- }
- }
- } else {
- }
- return BasePeer::doValidate(InterestPeer::DATABASE_NAME, InterestPeer::TABLE_NAME, $columns);
- }
- /**
- * Retrieve a single object by pkey.
- *
- * @param int $pk the primary key.
- * @param PropelPDO $con the connection to use
- * @return Interest
- */
- public static function retrieveByPK($pk, PropelPDO $con = null)
- {
- if (null !== ($obj = InterestPeer::getInstanceFromPool((string) $pk))) {
- return $obj;
- }
- if ($con === null) {
- $con = Propel::getConnection(InterestPeer::DATABASE_NAME, Propel::CONNECTION_READ);
- }
- $criteria = new Criteria(InterestPeer::DATABASE_NAME);
- $criteria->add(…
Large files files are truncated, but you can click here to view the full file