params[$name] = $value; } /* * @assert ('name') == 'value' */ public function __get($name) { //echo "Getting '$name'\n"; if (array_key_exists($name, $this->params)) { return $this->params[$name]; } $trace = debug_backtrace(); trigger_error( 'Undefined property via __get(): ' . $name . ' in ' . $trace[0]['file'] . ' on line ' . $trace[0]['line'], E_USER_NOTICE); return null; } /* * @assert ('name') == 'true' * @assert ('test') == 'false' */ public function __isset($name) { //echo "Is '$name' set?\n"; return isset($this->params[$name]); } public function __unset($name) { //echo "Unsetting '$name'\n"; unset($this->params[$name]); } public function findAllCustomers() { return $this->processQuery("SELECT * FROM customer_view ORDER BY customer_id ASC LIMIT ?", ["i", $this->limit]); } public function findByCustomerId() { return $this->processQuery("SELECT * FROM customer_view WHERE customer_id = ?", ["i", $this->customerId]); } public function insertCustomer($jsonPayLoad) { $rowCount = $this->processStatement("CALL insert_new_customer_proc", $jsonPayLoad); $result = (object) ['rowCount'=>$rowCount]; return $result; } public function updateCustomer($jsonPayLoad) { $rowCount = $this->processStatement("CALL update_existing_customer_proc", $jsonPayLoad); $result = (object) ['rowCount'=>$rowCount]; return $result; } public function deleteCustomer() { $rowCount = $this->processStatement("DELETE FROM customer WHERE customer_id = ?", [$this->customerId]); $result = (object) ['rowCount'=>$rowCount]; return $result; } }