* @since 100.0.2 */ class State extends DataObject { /** * Add filter item to layer state * * @param Item $filter * @return $this */ public function addFilter($filter) { $filters = $this->getFilters(); $filters[] = $filter; $this->setFilters($filters); return $this; } /** * Set layer state filter items * * @param Item[] $filters * @return $this * @throws LocalizedException */ public function setFilters($filters) { if (!is_array($filters)) { throw new LocalizedException(__('The filters are invalid. Set them in an array and try again.')); } $this->setData('filters', $filters); return $this; } /** * Get applied to layer filter items * * @return Item[] */ public function getFilters() { $filters = $this->getData('filters'); if ($filters === null) { $filters = []; $this->setData('filters', $filters); } return $filters; } }