has_inventory = false; $this->items = []; } public function setPoint(Point $point) { $this->point = $point; return $this; } public function getPoint() { return $this->point; } public function setLimitResults($limit_results) { $this->limit_results = $limit_results; return $this; } public function getLimitResults() { return $this->limit_results; } public function setLimitDistance($limit_distance) { $this->limit_distance = $limit_distance; return $this; } public function getLimitDistance() { return $this->limit_distance; } public function setInventoryCheck($flag_inventory_check = true) { $this->flag_inventory_check = $flag_inventory_check; return $this; } public function hasInventoryCheck() { return $this->flag_inventory_check; } public function setJoType($jo_type) { // TODO: validate the jo type $this->jo_type = $jo_type; return $this; } public function getJoType() { return $this->jo_type; } public function setDateTime(DateTime $date_time) { $this->date_time = $date_time; return $this; } public function getDateTime() { return $this->date_time; } public function addItem($sku, $quantity) { // at this point, sku is assumed to be a valid item $this->items[$sku] = $quantity; return $this; } public function getItems() { return $this->items; } }