/** * Performs an UPDATE for the given ModelObject through our DAO. * ModifiedDate is updated, and the validator is run. * * Validation Errors will throw a ValidationException * * @param ModelObject $obj The ModelObject to edit * * @return mixed See the edit() method of our DAO */ public function edit(ModelObject $obj) { if (!$obj->hasModifiedDate()) { $obj->ModifiedDate = $this->DateFactory->newStorageDate(); } $this->validator->validateFor(__FUNCTION__, $obj)->throwOnError(); return $this->dao->edit($obj); }