writing only iniaialized peoperty of records and added exceptions

This commit is contained in:
Arsen Mirzaev Tatyano-Muradovich 2025-02-01 23:38:58 +07:00
parent d0a661016b
commit 6937c70c9c
2 changed files with 20 additions and 4 deletions

View File

@ -463,9 +463,11 @@ class database
} else { } else {
// The record contains only empty values // The record contains only empty values
} }
} catch (exception_logic | exception_invalid_argument $exception) { } catch (exception_logic | exception_invalid_argument | exception_domain $exception) {
// Writing into the buffer of failed to reading records // Writing into the buffer of failed to reading records
/* $failed[] = $record; */
// Exit (fail)
throw new exception_runtime('Failed to processing the record', previous: $exception);
} }
} }

View File

@ -4,6 +4,9 @@ declare(strict_types=1);
namespace mirzaev\baza; namespace mirzaev\baza;
// Built-in libraries
use DomainException as exception_domain;
/** /**
* Record * Record
* *
@ -63,12 +66,23 @@ class record
* @param string $name Name of the parameter * @param string $name Name of the parameter
* @param mixed $value Content of the parameter * @param mixed $value Content of the parameter
* *
* @throws exception_domain if not found the parameter
*
* @return void * @return void
*/ */
public function __set(string $name, mixed $value = null): void public function __set(string $name, mixed $value = null): void
{ {
// Writing the value and exit if (isset($this->values[$name])) {
$this->values[$name] = $value; // Initialized the parameter
// Writing the value and exit
$this->values[$name] = $value;
} else {
// Not initialized the parameter
// Exit (fail)
throw new exception_domain("Not found the parameter: $name");
}
} }
/** /**