addFilter($filter); } public function setFilter(Filter $filter) { $this->filter = $filter; return $this; } public function getFilter() { return $this->filter; } public function addFilter(Filter $filter) { if (! $filter->isEmpty()) { if ($this->filter === null) { $this->filter = $filter; } else { $this->filter->andFilter($filter); } } return $this; } public function where($condition, $value = null) { $this->addFilter(Filter::expression($condition, '=', $value)); return $this; } }