* * The place is open if the opens property is specified, and closed otherwise.

* * If the value for the closes property is less than the value for the opens property then the hour range is assumed to span over the next day.") */ class OpeningHoursSpecification extends StructuredValue implements \JsonSerializable { /** @var \PSX\DateTime\Time|null */ protected $closes; /** @var DayOfWeek|null */ protected $dayOfWeek; /** @var \PSX\DateTime\Time|null */ protected $opens; /** @var \PSX\DateTime\Date|\DateTime|null */ protected $validThrough; /** @var \PSX\DateTime\Date|\DateTime|null */ protected $validFrom; /** * @param \PSX\DateTime\Time|null $closes */ public function setCloses(?\PSX\DateTime\Time $closes): void { $this->closes = $closes; } /** * @return \PSX\DateTime\Time|null */ public function getCloses(): ?\PSX\DateTime\Time { return $this->closes; } /** * @param DayOfWeek|null $dayOfWeek */ public function setDayOfWeek(?DayOfWeek $dayOfWeek): void { $this->dayOfWeek = $dayOfWeek; } /** * @return DayOfWeek|null */ public function getDayOfWeek(): ?DayOfWeek { return $this->dayOfWeek; } /** * @param \PSX\DateTime\Time|null $opens */ public function setOpens(?\PSX\DateTime\Time $opens): void { $this->opens = $opens; } /** * @return \PSX\DateTime\Time|null */ public function getOpens(): ?\PSX\DateTime\Time { return $this->opens; } /** * @param \PSX\DateTime\Date|\DateTime|null $validThrough */ public function setValidThrough($validThrough): void { $this->validThrough = $validThrough; } /** * @return \PSX\DateTime\Date|\DateTime|null */ public function getValidThrough() { return $this->validThrough; } /** * @param \PSX\DateTime\Date|\DateTime|null $validFrom */ public function setValidFrom($validFrom): void { $this->validFrom = $validFrom; } /** * @return \PSX\DateTime\Date|\DateTime|null */ public function getValidFrom() { return $this->validFrom; } public function jsonSerialize() { return (object) array_merge((array) parent::jsonSerialize(), array_filter(array('closes' => $this->closes, 'dayOfWeek' => $this->dayOfWeek, 'opens' => $this->opens, 'validThrough' => $this->validThrough, 'validFrom' => $this->validFrom), static function ($value) : bool { return $value !== null; })); } } __halt_compiler();----SIGNATURE:----ZaLG9JciHNLBZeBV53B9sxemjd1DvGmO9cKa5cJTE9gdvqIz5zjuNCbeRFoCnt9kR0KJ8O3a4xXg45URf9/bAPescHno5DgvN04iZJJ9oZdNiX0e0iIKoQ08CrdXOAUSUrq5vGE5ts/8N0tTMgbZ/jzVnIQ4ZqKXK1WEespBNqOpiJW8mTyxxWC5xeYXw2nfACc2ijDveH0XGCiHiky/2Qtj1U4/kir1Oy0RwqkMApPsi++eFSc+BqMqtRz6L59qJP9DMugzvq+cGyBwyjkVMd2KSHucvJCVwohWEc+YPw0kDrRG5MJE0GpTi037eYHUE8Fsth533fJVig5HInv10bc0xnEqWqTCV7K1jViTKu9iQKDN6u2OhBnqD5SbC4+IEaj4Lc3a86tHgnXinC/sdYAb+d6SLmeqIvNk/0tNarnmQQO0TSmK7arfka/c15pVx0fU/KEsnnOa0gMjyrfcTZSdnmmqru47z+DAG4v6GIxjZAF5tMSrRahKLs+4nXOvO4fxo6Llgd8gys9GJ6VC1Td+eHavFVGgtQwmZIahE+c4SLzWm16YxQKN84DzsdSbfUolIrIB9rB5t6dzl/sPJkfZoZeA5S5AF+m3+mmvw4/5lLMurtN49cR3+M2NfmRu5kNyPdyQcE6ckereiYADriABssgDQALvCN9hE4gtyvw=----ATTACHMENT:----ODAzMDMzNTk3MTAwMjg1NiAyNjYyMjMyNDU1MDI2ODMzIDc4MTI0ODY4Mjc4MjU3MTU=