From f6933b82bbdb767480abf4cf6818b2db56fae1cc Mon Sep 17 00:00:00 2001 From: Stefan Suhren Date: Sat, 2 May 2015 15:54:22 +0200 Subject: Use composer to pull in propel and set it up --- Aufgabe06/generated-classes/Base/UserQuery.php | 364 +++++++++++++++++++++++++ 1 file changed, 364 insertions(+) create mode 100644 Aufgabe06/generated-classes/Base/UserQuery.php (limited to 'Aufgabe06/generated-classes/Base/UserQuery.php') diff --git a/Aufgabe06/generated-classes/Base/UserQuery.php b/Aufgabe06/generated-classes/Base/UserQuery.php new file mode 100644 index 0000000..2e87ec4 --- /dev/null +++ b/Aufgabe06/generated-classes/Base/UserQuery.php @@ -0,0 +1,364 @@ +setModelAlias($modelAlias); + } + if ($criteria instanceof Criteria) { + $query->mergeWith($criteria); + } + + return $query; + } + + /** + * Find object by primary key. + * Propel uses the instance pool to skip the database if the object exists. + * Go fast if the query is untouched. + * + * + * $obj = $c->findPk(12, $con); + * + * + * @param mixed $key Primary key to use for the query + * @param ConnectionInterface $con an optional connection object + * + * @return ChildUser|array|mixed the result, formatted by the current formatter + */ + public function findPk($key, ConnectionInterface $con = null) + { + if ($key === null) { + return null; + } + if ((null !== ($obj = UserTableMap::getInstanceFromPool((string) $key))) && !$this->formatter) { + // the object is already in the instance pool + return $obj; + } + if ($con === null) { + $con = Propel::getServiceContainer()->getReadConnection(UserTableMap::DATABASE_NAME); + } + $this->basePreSelect($con); + if ($this->formatter || $this->modelAlias || $this->with || $this->select + || $this->selectColumns || $this->asColumns || $this->selectModifiers + || $this->map || $this->having || $this->joins) { + return $this->findPkComplex($key, $con); + } else { + return $this->findPkSimple($key, $con); + } + } + + /** + * Find object by primary key using raw SQL to go fast. + * Bypass doSelect() and the object formatter by using generated code. + * + * @param mixed $key Primary key to use for the query + * @param ConnectionInterface $con A connection object + * + * @throws \Propel\Runtime\Exception\PropelException + * + * @return ChildUser A model object, or null if the key is not found + */ + protected function findPkSimple($key, ConnectionInterface $con) + { + $sql = 'SELECT username, password FROM user WHERE username = :p0'; + try { + $stmt = $con->prepare($sql); + $stmt->bindValue(':p0', $key, PDO::PARAM_STR); + $stmt->execute(); + } catch (Exception $e) { + Propel::log($e->getMessage(), Propel::LOG_ERR); + throw new PropelException(sprintf('Unable to execute SELECT statement [%s]', $sql), 0, $e); + } + $obj = null; + if ($row = $stmt->fetch(\PDO::FETCH_NUM)) { + /** @var ChildUser $obj */ + $obj = new ChildUser(); + $obj->hydrate($row); + UserTableMap::addInstanceToPool($obj, (string) $key); + } + $stmt->closeCursor(); + + return $obj; + } + + /** + * Find object by primary key. + * + * @param mixed $key Primary key to use for the query + * @param ConnectionInterface $con A connection object + * + * @return ChildUser|array|mixed the result, formatted by the current formatter + */ + protected function findPkComplex($key, ConnectionInterface $con) + { + // As the query uses a PK condition, no limit(1) is necessary. + $criteria = $this->isKeepQuery() ? clone $this : $this; + $dataFetcher = $criteria + ->filterByPrimaryKey($key) + ->doSelect($con); + + return $criteria->getFormatter()->init($criteria)->formatOne($dataFetcher); + } + + /** + * Find objects by primary key + * + * $objs = $c->findPks(array(12, 56, 832), $con); + * + * @param array $keys Primary keys to use for the query + * @param ConnectionInterface $con an optional connection object + * + * @return ObjectCollection|array|mixed the list of results, formatted by the current formatter + */ + public function findPks($keys, ConnectionInterface $con = null) + { + if (null === $con) { + $con = Propel::getServiceContainer()->getReadConnection($this->getDbName()); + } + $this->basePreSelect($con); + $criteria = $this->isKeepQuery() ? clone $this : $this; + $dataFetcher = $criteria + ->filterByPrimaryKeys($keys) + ->doSelect($con); + + return $criteria->getFormatter()->init($criteria)->format($dataFetcher); + } + + /** + * Filter the query by primary key + * + * @param mixed $key Primary key to use for the query + * + * @return $this|ChildUserQuery The current query, for fluid interface + */ + public function filterByPrimaryKey($key) + { + + return $this->addUsingAlias(UserTableMap::COL_USERNAME, $key, Criteria::EQUAL); + } + + /** + * Filter the query by a list of primary keys + * + * @param array $keys The list of primary key to use for the query + * + * @return $this|ChildUserQuery The current query, for fluid interface + */ + public function filterByPrimaryKeys($keys) + { + + return $this->addUsingAlias(UserTableMap::COL_USERNAME, $keys, Criteria::IN); + } + + /** + * Filter the query on the username column + * + * Example usage: + * + * $query->filterByUsername('fooValue'); // WHERE username = 'fooValue' + * $query->filterByUsername('%fooValue%'); // WHERE username LIKE '%fooValue%' + * + * + * @param string $username The value to use as filter. + * Accepts wildcards (* and % trigger a LIKE) + * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL + * + * @return $this|ChildUserQuery The current query, for fluid interface + */ + public function filterByUsername($username = null, $comparison = null) + { + if (null === $comparison) { + if (is_array($username)) { + $comparison = Criteria::IN; + } elseif (preg_match('/[\%\*]/', $username)) { + $username = str_replace('*', '%', $username); + $comparison = Criteria::LIKE; + } + } + + return $this->addUsingAlias(UserTableMap::COL_USERNAME, $username, $comparison); + } + + /** + * Filter the query on the password column + * + * Example usage: + * + * $query->filterByPassword('fooValue'); // WHERE password = 'fooValue' + * $query->filterByPassword('%fooValue%'); // WHERE password LIKE '%fooValue%' + * + * + * @param string $password The value to use as filter. + * Accepts wildcards (* and % trigger a LIKE) + * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL + * + * @return $this|ChildUserQuery The current query, for fluid interface + */ + public function filterByPassword($password = null, $comparison = null) + { + if (null === $comparison) { + if (is_array($password)) { + $comparison = Criteria::IN; + } elseif (preg_match('/[\%\*]/', $password)) { + $password = str_replace('*', '%', $password); + $comparison = Criteria::LIKE; + } + } + + return $this->addUsingAlias(UserTableMap::COL_PASSWORD, $password, $comparison); + } + + /** + * Exclude object from result + * + * @param ChildUser $user Object to remove from the list of results + * + * @return $this|ChildUserQuery The current query, for fluid interface + */ + public function prune($user = null) + { + if ($user) { + $this->addUsingAlias(UserTableMap::COL_USERNAME, $user->getUsername(), Criteria::NOT_EQUAL); + } + + return $this; + } + + /** + * Deletes all rows from the user table. + * + * @param ConnectionInterface $con the connection to use + * @return int The number of affected rows (if supported by underlying database driver). + */ + public function doDeleteAll(ConnectionInterface $con = null) + { + if (null === $con) { + $con = Propel::getServiceContainer()->getWriteConnection(UserTableMap::DATABASE_NAME); + } + + // use transaction because $criteria could contain info + // for more than one table or we could emulating ON DELETE CASCADE, etc. + return $con->transaction(function () use ($con) { + $affectedRows = 0; // initialize var to track total num of affected rows + $affectedRows += parent::doDeleteAll($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). + UserTableMap::clearInstancePool(); + UserTableMap::clearRelatedInstancePool(); + + return $affectedRows; + }); + } + + /** + * Performs a DELETE on the database based on the current ModelCriteria + * + * @param ConnectionInterface $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 function delete(ConnectionInterface $con = null) + { + if (null === $con) { + $con = Propel::getServiceContainer()->getWriteConnection(UserTableMap::DATABASE_NAME); + } + + $criteria = $this; + + // Set the correct dbName + $criteria->setDbName(UserTableMap::DATABASE_NAME); + + // use transaction because $criteria could contain info + // for more than one table or we could emulating ON DELETE CASCADE, etc. + return $con->transaction(function () use ($con, $criteria) { + $affectedRows = 0; // initialize var to track total num of affected rows + + UserTableMap::removeInstanceFromPool($criteria); + + $affectedRows += ModelCriteria::delete($con); + UserTableMap::clearRelatedInstancePool(); + + return $affectedRows; + }); + } + +} // UserQuery -- cgit v1.2.3-70-g09d2