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 PropelPDO $con an optional connection object
*
* @return PingWatchdog|PingWatchdog[]|mixed the result, formatted by the current formatter
*/
public function findPk($key, $con = null)
{
if ($key === null) {
return null;
}
if ((null !== ($obj = PingWatchdogPeer::getInstanceFromPool((string) $key))) && !$this->formatter) {
// the object is already in the instance pool
return $obj;
}
if ($con === null) {
$con = Propel::getConnection(PingWatchdogPeer::DATABASE_NAME, Propel::CONNECTION_READ);
}
$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);
}
}
/**
* Alias of findPk to use instance pooling
*
* @param mixed $key Primary key to use for the query
* @param PropelPDO $con A connection object
*
* @return PingWatchdog A model object, or null if the key is not found
* @throws PropelException
*/
public function findOneById($key, $con = null)
{
return $this->findPk($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 PropelPDO $con A connection object
*
* @return PingWatchdog A model object, or null if the key is not found
* @throws PropelException
*/
protected function findPkSimple($key, $con)
{
$sql = 'SELECT `id`, `mod`, `name`, `inst_addr_sel`, `inst_addr_val`, `evt_spec_sel`, `evt_spec_val`, `has_alarm`, `inactive` FROM `ping_wdog` WHERE `id` = :p0';
try {
$stmt = $con->prepare($sql);
$stmt->bindValue(':p0', $key, PDO::PARAM_INT);
$stmt->execute();
} catch (Exception $e) {
Propel::log($e->getMessage(), Propel::LOG_ERR);
throw new PropelException(sprintf('Unable to execute SELECT statement [%s]', $sql), $e);
}
$obj = null;
if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
$obj = new PingWatchdog();
$obj->hydrate($row);
PingWatchdogPeer::addInstanceToPool($obj, (string) $key);
}
$stmt->closeCursor();
return $obj;
}
/**
* Find object by primary key.
*
* @param mixed $key Primary key to use for the query
* @param PropelPDO $con A connection object
*
* @return PingWatchdog|PingWatchdog[]|mixed the result, formatted by the current formatter
*/
protected function findPkComplex($key, $con)
{
// As the query uses a PK condition, no limit(1) is necessary.
$criteria = $this->isKeepQuery() ? clone $this : $this;
$stmt = $criteria
->filterByPrimaryKey($key)
->doSelect($con);
return $criteria->getFormatter()->init($criteria)->formatOne($stmt);
}
/**
* Find objects by primary key
*
* $objs = $c->findPks(array(12, 56, 832), $con);
*
* @param array $keys Primary keys to use for the query
* @param PropelPDO $con an optional connection object
*
* @return PropelObjectCollection|PingWatchdog[]|mixed the list of results, formatted by the current formatter
*/
public function findPks($keys, $con = null)
{
if ($con === null) {
$con = Propel::getConnection($this->getDbName(), Propel::CONNECTION_READ);
}
$this->basePreSelect($con);
$criteria = $this->isKeepQuery() ? clone $this : $this;
$stmt = $criteria
->filterByPrimaryKeys($keys)
->doSelect($con);
return $criteria->getFormatter()->init($criteria)->format($stmt);
}
/**
* Filter the query by primary key
*
* @param mixed $key Primary key to use for the query
*
* @return PingWatchdogQuery The current query, for fluid interface
*/
public function filterByPrimaryKey($key)
{
return $this->addUsingAlias(PingWatchdogPeer::ID, $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 PingWatchdogQuery The current query, for fluid interface
*/
public function filterByPrimaryKeys($keys)
{
return $this->addUsingAlias(PingWatchdogPeer::ID, $keys, Criteria::IN);
}
/**
* Filter the query on the id column
*
* Example usage:
*
* $query->filterById(1234); // WHERE id = 1234
* $query->filterById(array(12, 34)); // WHERE id IN (12, 34)
* $query->filterById(array('min' => 12)); // WHERE id >= 12
* $query->filterById(array('max' => 12)); // WHERE id <= 12
*
*
* @param mixed $id The value to use as filter.
* Use scalar values for equality.
* Use array values for in_array() equivalent.
* Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
*
* @return PingWatchdogQuery The current query, for fluid interface
*/
public function filterById($id = null, $comparison = null)
{
if (is_array($id)) {
$useMinMax = false;
if (isset($id['min'])) {
$this->addUsingAlias(PingWatchdogPeer::ID, $id['min'], Criteria::GREATER_EQUAL);
$useMinMax = true;
}
if (isset($id['max'])) {
$this->addUsingAlias(PingWatchdogPeer::ID, $id['max'], Criteria::LESS_EQUAL);
$useMinMax = true;
}
if ($useMinMax) {
return $this;
}
if (null === $comparison) {
$comparison = Criteria::IN;
}
}
return $this->addUsingAlias(PingWatchdogPeer::ID, $id, $comparison);
}
/**
* Filter the query on the mod column
*
* Example usage:
*
* $query->filterByMod(1234); // WHERE mod = 1234
* $query->filterByMod(array(12, 34)); // WHERE mod IN (12, 34)
* $query->filterByMod(array('min' => 12)); // WHERE mod >= 12
* $query->filterByMod(array('max' => 12)); // WHERE mod <= 12
*
*
* @param mixed $mod The value to use as filter.
* Use scalar values for equality.
* Use array values for in_array() equivalent.
* Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
*
* @return PingWatchdogQuery The current query, for fluid interface
*/
public function filterByMod($mod = null, $comparison = null)
{
if (is_array($mod)) {
$useMinMax = false;
if (isset($mod['min'])) {
$this->addUsingAlias(PingWatchdogPeer::MOD, $mod['min'], Criteria::GREATER_EQUAL);
$useMinMax = true;
}
if (isset($mod['max'])) {
$this->addUsingAlias(PingWatchdogPeer::MOD, $mod['max'], Criteria::LESS_EQUAL);
$useMinMax = true;
}
if ($useMinMax) {
return $this;
}
if (null === $comparison) {
$comparison = Criteria::IN;
}
}
return $this->addUsingAlias(PingWatchdogPeer::MOD, $mod, $comparison);
}
/**
* Filter the query on the name column
*
* Example usage:
*
* $query->filterByName('fooValue'); // WHERE name = 'fooValue'
* $query->filterByName('%fooValue%'); // WHERE name LIKE '%fooValue%'
*
*
* @param string $name 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 PingWatchdogQuery The current query, for fluid interface
*/
public function filterByName($name = null, $comparison = null)
{
if (null === $comparison) {
if (is_array($name)) {
$comparison = Criteria::IN;
} elseif (preg_match('/[\%\*]/', $name)) {
$name = str_replace('*', '%', $name);
$comparison = Criteria::LIKE;
}
}
return $this->addUsingAlias(PingWatchdogPeer::NAME, $name, $comparison);
}
/**
* Filter the query on the inst_addr_sel column
*
* Example usage:
*
* $query->filterByInstAddrSel(1234); // WHERE inst_addr_sel = 1234
* $query->filterByInstAddrSel(array(12, 34)); // WHERE inst_addr_sel IN (12, 34)
* $query->filterByInstAddrSel(array('min' => 12)); // WHERE inst_addr_sel >= 12
* $query->filterByInstAddrSel(array('max' => 12)); // WHERE inst_addr_sel <= 12
*
*
* @param mixed $instAddrSel The value to use as filter.
* Use scalar values for equality.
* Use array values for in_array() equivalent.
* Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
*
* @return PingWatchdogQuery The current query, for fluid interface
*/
public function filterByInstAddrSel($instAddrSel = null, $comparison = null)
{
if (is_array($instAddrSel)) {
$useMinMax = false;
if (isset($instAddrSel['min'])) {
$this->addUsingAlias(PingWatchdogPeer::INST_ADDR_SEL, $instAddrSel['min'], Criteria::GREATER_EQUAL);
$useMinMax = true;
}
if (isset($instAddrSel['max'])) {
$this->addUsingAlias(PingWatchdogPeer::INST_ADDR_SEL, $instAddrSel['max'], Criteria::LESS_EQUAL);
$useMinMax = true;
}
if ($useMinMax) {
return $this;
}
if (null === $comparison) {
$comparison = Criteria::IN;
}
}
return $this->addUsingAlias(PingWatchdogPeer::INST_ADDR_SEL, $instAddrSel, $comparison);
}
/**
* Filter the query on the inst_addr_val column
*
* Example usage:
*
* $query->filterByInstAddrVal('fooValue'); // WHERE inst_addr_val = 'fooValue'
* $query->filterByInstAddrVal('%fooValue%'); // WHERE inst_addr_val LIKE '%fooValue%'
*
*
* @param string $instAddrVal 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 PingWatchdogQuery The current query, for fluid interface
*/
public function filterByInstAddrVal($instAddrVal = null, $comparison = null)
{
if (null === $comparison) {
if (is_array($instAddrVal)) {
$comparison = Criteria::IN;
} elseif (preg_match('/[\%\*]/', $instAddrVal)) {
$instAddrVal = str_replace('*', '%', $instAddrVal);
$comparison = Criteria::LIKE;
}
}
return $this->addUsingAlias(PingWatchdogPeer::INST_ADDR_VAL, $instAddrVal, $comparison);
}
/**
* Filter the query on the evt_spec_sel column
*
* Example usage:
*
* $query->filterByEvtSpecSel(1234); // WHERE evt_spec_sel = 1234
* $query->filterByEvtSpecSel(array(12, 34)); // WHERE evt_spec_sel IN (12, 34)
* $query->filterByEvtSpecSel(array('min' => 12)); // WHERE evt_spec_sel >= 12
* $query->filterByEvtSpecSel(array('max' => 12)); // WHERE evt_spec_sel <= 12
*
*
* @param mixed $evtSpecSel The value to use as filter.
* Use scalar values for equality.
* Use array values for in_array() equivalent.
* Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
*
* @return PingWatchdogQuery The current query, for fluid interface
*/
public function filterByEvtSpecSel($evtSpecSel = null, $comparison = null)
{
if (is_array($evtSpecSel)) {
$useMinMax = false;
if (isset($evtSpecSel['min'])) {
$this->addUsingAlias(PingWatchdogPeer::EVT_SPEC_SEL, $evtSpecSel['min'], Criteria::GREATER_EQUAL);
$useMinMax = true;
}
if (isset($evtSpecSel['max'])) {
$this->addUsingAlias(PingWatchdogPeer::EVT_SPEC_SEL, $evtSpecSel['max'], Criteria::LESS_EQUAL);
$useMinMax = true;
}
if ($useMinMax) {
return $this;
}
if (null === $comparison) {
$comparison = Criteria::IN;
}
}
return $this->addUsingAlias(PingWatchdogPeer::EVT_SPEC_SEL, $evtSpecSel, $comparison);
}
/**
* Filter the query on the evt_spec_val column
*
* Example usage:
*
* $query->filterByEvtSpecVal('fooValue'); // WHERE evt_spec_val = 'fooValue'
* $query->filterByEvtSpecVal('%fooValue%'); // WHERE evt_spec_val LIKE '%fooValue%'
*
*
* @param string $evtSpecVal 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 PingWatchdogQuery The current query, for fluid interface
*/
public function filterByEvtSpecVal($evtSpecVal = null, $comparison = null)
{
if (null === $comparison) {
if (is_array($evtSpecVal)) {
$comparison = Criteria::IN;
} elseif (preg_match('/[\%\*]/', $evtSpecVal)) {
$evtSpecVal = str_replace('*', '%', $evtSpecVal);
$comparison = Criteria::LIKE;
}
}
return $this->addUsingAlias(PingWatchdogPeer::EVT_SPEC_VAL, $evtSpecVal, $comparison);
}
/**
* Filter the query on the has_alarm column
*
* Example usage:
*
* $query->filterByHasAlarm(true); // WHERE has_alarm = true
* $query->filterByHasAlarm('yes'); // WHERE has_alarm = true
*
*
* @param boolean|string $hasAlarm The value to use as filter.
* Non-boolean arguments are converted using the following rules:
* * 1, '1', 'true', 'on', and 'yes' are converted to boolean true
* * 0, '0', 'false', 'off', and 'no' are converted to boolean false
* Check on string values is case insensitive (so 'FaLsE' is seen as 'false').
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
*
* @return PingWatchdogQuery The current query, for fluid interface
*/
public function filterByHasAlarm($hasAlarm = null, $comparison = null)
{
if (is_string($hasAlarm)) {
$hasAlarm = in_array(strtolower($hasAlarm), array('false', 'off', '-', 'no', 'n', '0', '')) ? false : true;
}
return $this->addUsingAlias(PingWatchdogPeer::HAS_ALARM, $hasAlarm, $comparison);
}
/**
* Filter the query on the inactive column
*
* Example usage:
*
* $query->filterByInactive(true); // WHERE inactive = true
* $query->filterByInactive('yes'); // WHERE inactive = true
*
*
* @param boolean|string $inactive The value to use as filter.
* Non-boolean arguments are converted using the following rules:
* * 1, '1', 'true', 'on', and 'yes' are converted to boolean true
* * 0, '0', 'false', 'off', and 'no' are converted to boolean false
* Check on string values is case insensitive (so 'FaLsE' is seen as 'false').
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
*
* @return PingWatchdogQuery The current query, for fluid interface
*/
public function filterByInactive($inactive = null, $comparison = null)
{
if (is_string($inactive)) {
$inactive = in_array(strtolower($inactive), array('false', 'off', '-', 'no', 'n', '0', '')) ? false : true;
}
return $this->addUsingAlias(PingWatchdogPeer::INACTIVE, $inactive, $comparison);
}
/**
* Exclude object from result
*
* @param PingWatchdog $pingWatchdog Object to remove from the list of results
*
* @return PingWatchdogQuery The current query, for fluid interface
*/
public function prune($pingWatchdog = null)
{
if ($pingWatchdog) {
$this->addUsingAlias(PingWatchdogPeer::ID, $pingWatchdog->getId(), Criteria::NOT_EQUAL);
}
return $this;
}
}