/** * Remove an object. * @param ChunsuObject $removeme The object to remove. * @param DataSource $source The data source to remove the object from. * @return bool TRUE is successful, FALSE otherwise. */ function remove(&$removeme, $source) { parent::remove($removeme, $source); $gen = new SQLGenerator($removeme->getCore()); $removequeries = $gen->delete($this->config); foreach ($removequeries as $rq) { $cursor =& $source->query($rq); $rv = $cursor->getNext(); if (!$rv) { LogError("remove query failed! removing " . print_r($removeme, TRUE)); return FALSE; } } $rv = $cursor->getNext(); if (!$rv) { LogError("Remove failed! Removing " . print_r($removeme, TRUE)); return FALSE; } if ($rows = $cursor->get('affected-rows') > 1) { LogWarning("{$rows} records deleted removing " . print_r($removeme, TRUE)); } $removeme->is_new = $removeme->config->get('create-on-save'); return TRUE; }
/** * Remove this object's data from the data source. */ function remove() { $this->connectDataSource(); $this->storage_method->remove($this, $this->datasource); }