modifs.mineures sans commentaires
This commit is contained in:
parent
057f3316ac
commit
976e3674b4
|
@ -148,22 +148,23 @@ EOT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** tester si le canal spécifié existe */
|
||||||
abstract function _exists(CapacitorChannel $channel): bool;
|
abstract function _exists(CapacitorChannel $channel): bool;
|
||||||
|
|
||||||
/** tester si le canal spécifié existe */
|
|
||||||
function exists(?string $channel): bool {
|
function exists(?string $channel): bool {
|
||||||
return $this->_exists($this->getChannel($channel));
|
return $this->_exists($this->getChannel($channel));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** s'assurer que le canal spécifié existe */
|
||||||
function _ensureExists(CapacitorChannel $channel): void {
|
function _ensureExists(CapacitorChannel $channel): void {
|
||||||
$this->_create($channel);
|
$this->_create($channel);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** s'assurer que le canal spécifié existe */
|
|
||||||
function ensureExists(?string $channel): void {
|
function ensureExists(?string $channel): void {
|
||||||
$this->_ensureExists($this->getChannel($channel));
|
$this->_ensureExists($this->getChannel($channel));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** supprimer le canal spécifié */
|
||||||
function _reset(CapacitorChannel $channel, bool $recreate=false): void {
|
function _reset(CapacitorChannel $channel, bool $recreate=false): void {
|
||||||
$this->db->exec([
|
$this->db->exec([
|
||||||
"drop table if exists",
|
"drop table if exists",
|
||||||
|
@ -173,11 +174,29 @@ EOT;
|
||||||
if ($recreate) $this->_ensureExists($channel);
|
if ($recreate) $this->_ensureExists($channel);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** supprimer le canal spécifié */
|
|
||||||
function reset(?string $channel, bool $recreate=false): void {
|
function reset(?string $channel, bool $recreate=false): void {
|
||||||
$this->_reset($this->getChannel($channel), $recreate);
|
$this->_reset($this->getChannel($channel), $recreate);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* charger une valeur dans le canal
|
||||||
|
*
|
||||||
|
* Après avoir calculé les valeurs des clés supplémentaires
|
||||||
|
* avec {@link CapacitorChannel::getItemValues()}, l'une des deux fonctions
|
||||||
|
* {@link CapacitorChannel::onCreate()} ou {@link CapacitorChannel::onUpdate()}
|
||||||
|
* est appelée en fonction du type d'opération: création ou mise à jour
|
||||||
|
*
|
||||||
|
* Ensuite, si $func !== null, la fonction est appelée avec la signature de
|
||||||
|
* {@link CapacitorChannel::onCreate()} ou {@link CapacitorChannel::onUpdate()}
|
||||||
|
* en fonction du type d'opération: création ou mise à jour
|
||||||
|
*
|
||||||
|
* Dans les deux cas, si la fonction retourne un tableau, il est utilisé pour
|
||||||
|
* modifier les valeurs insérées/mises à jour. De plus, $values obtient la
|
||||||
|
* valeur finale des données insérées/mises à jour
|
||||||
|
*
|
||||||
|
* @return int 1 si l'objet a été chargé ou mis à jour, 0 s'il existait
|
||||||
|
* déjà à l'identique dans le canal
|
||||||
|
*/
|
||||||
function _charge(CapacitorChannel $channel, $item, $func, ?array $args, ?array &$values=null): int {
|
function _charge(CapacitorChannel $channel, $item, $func, ?array $args, ?array &$values=null): int {
|
||||||
$this->_create($channel);
|
$this->_create($channel);
|
||||||
$tableName = $channel->getTableName();
|
$tableName = $channel->getTableName();
|
||||||
|
@ -267,29 +286,11 @@ EOT;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* charger une valeur dans le canal
|
|
||||||
*
|
|
||||||
* Après avoir calculé les valeurs des clés supplémentaires
|
|
||||||
* avec {@link CapacitorChannel::getItemValues()}, l'une des deux fonctions
|
|
||||||
* {@link CapacitorChannel::onCreate()} ou {@link CapacitorChannel::onUpdate()}
|
|
||||||
* est appelée en fonction du type d'opération: création ou mise à jour
|
|
||||||
*
|
|
||||||
* Ensuite, si $func !== null, la fonction est appelée avec la signature de
|
|
||||||
* {@link CapacitorChannel::onCreate()} ou {@link CapacitorChannel::onUpdate()}
|
|
||||||
* en fonction du type d'opération: création ou mise à jour
|
|
||||||
*
|
|
||||||
* Dans les deux cas, si la fonction retourne un tableau, il est utilisé pour
|
|
||||||
* modifier les valeurs insérées/mises à jour. De plus, $values obtient la
|
|
||||||
* valeur finale des données insérées/mises à jour
|
|
||||||
*
|
|
||||||
* @return int 1 si l'objet a été chargé ou mis à jour, 0 s'il existait
|
|
||||||
* déjà à l'identique dans le canal
|
|
||||||
*/
|
|
||||||
function charge(?string $channel, $item, $func=null, ?array $args=null, ?array &$values=null): int {
|
function charge(?string $channel, $item, $func=null, ?array $args=null, ?array &$values=null): int {
|
||||||
return $this->_charge($this->getChannel($channel), $item, $func, $args, $values);
|
return $this->_charge($this->getChannel($channel), $item, $func, $args, $values);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** décharger les données du canal spécifié */
|
||||||
function _discharge(CapacitorChannel $channel, bool $reset=true): iterable {
|
function _discharge(CapacitorChannel $channel, bool $reset=true): iterable {
|
||||||
$this->_create($channel);
|
$this->_create($channel);
|
||||||
$rows = $this->db()->all([
|
$rows = $this->db()->all([
|
||||||
|
@ -302,7 +303,6 @@ EOT;
|
||||||
if ($reset) $this->_reset($channel);
|
if ($reset) $this->_reset($channel);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** décharger les données du canal spécifié */
|
|
||||||
function discharge(?string $channel, bool $reset=true): iterable {
|
function discharge(?string $channel, bool $reset=true): iterable {
|
||||||
return $this->_discharge($this->getChannel($channel), $reset);
|
return $this->_discharge($this->getChannel($channel), $reset);
|
||||||
}
|
}
|
||||||
|
@ -316,6 +316,7 @@ EOT;
|
||||||
$filter = $this->serialize($channel, $filter);
|
$filter = $this->serialize($channel, $filter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** indiquer le nombre d'éléments du canal spécifié */
|
||||||
function _count(CapacitorChannel $channel, $filter): int {
|
function _count(CapacitorChannel $channel, $filter): int {
|
||||||
$this->_create($channel);
|
$this->_create($channel);
|
||||||
$this->verifixFilter($channel, $filter);
|
$this->verifixFilter($channel, $filter);
|
||||||
|
@ -326,11 +327,15 @@ EOT;
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** indiquer le nombre d'éléments du canal spécifié */
|
|
||||||
function count(?string $channel, $filter=null): int {
|
function count(?string $channel, $filter=null): int {
|
||||||
return $this->_count($this->getChannel($channel), $filter);
|
return $this->_count($this->getChannel($channel), $filter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* obtenir la ligne correspondant au filtre sur le canal spécifié
|
||||||
|
*
|
||||||
|
* si $filter n'est pas un tableau, il est transformé en ["id_" => $filter]
|
||||||
|
*/
|
||||||
function _one(CapacitorChannel $channel, $filter): ?array {
|
function _one(CapacitorChannel $channel, $filter): ?array {
|
||||||
if ($filter === null) throw ValueException::null("filter");
|
if ($filter === null) throw ValueException::null("filter");
|
||||||
$this->_create($channel);
|
$this->_create($channel);
|
||||||
|
@ -343,15 +348,15 @@ EOT;
|
||||||
return $this->unserialize($channel, $row);
|
return $this->unserialize($channel, $row);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* obtenir la ligne correspondant au filtre sur le canal spécifié
|
|
||||||
*
|
|
||||||
* si $filter n'est pas un tableau, il est transformé en ["id_" => $filter]
|
|
||||||
*/
|
|
||||||
function one(?string $channel, $filter): ?array {
|
function one(?string $channel, $filter): ?array {
|
||||||
return $this->_one($this->getChannel($channel), $filter);
|
return $this->_one($this->getChannel($channel), $filter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* obtenir les lignes correspondant au filtre sur le canal spécifié
|
||||||
|
*
|
||||||
|
* si $filter n'est pas un tableau, il est transformé en ["id_" => $filter]
|
||||||
|
*/
|
||||||
function _all(CapacitorChannel $channel, $filter): iterable {
|
function _all(CapacitorChannel $channel, $filter): iterable {
|
||||||
$this->_create($channel);
|
$this->_create($channel);
|
||||||
$this->verifixFilter($channel, $filter);
|
$this->verifixFilter($channel, $filter);
|
||||||
|
@ -365,15 +370,21 @@ EOT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* obtenir les lignes correspondant au filtre sur le canal spécifié
|
|
||||||
*
|
|
||||||
* si $filter n'est pas un tableau, il est transformé en ["id_" => $filter]
|
|
||||||
*/
|
|
||||||
function all(?string $channel, $filter): iterable {
|
function all(?string $channel, $filter): iterable {
|
||||||
return $this->_all($this->getChannel($channel), $filter);
|
return $this->_all($this->getChannel($channel), $filter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* appeler une fonction pour chaque élément du canal spécifié.
|
||||||
|
*
|
||||||
|
* $filter permet de filtrer parmi les élements chargés
|
||||||
|
*
|
||||||
|
* $func est appelé avec la signature de {@link CapacitorChannel::onEach()}
|
||||||
|
* si la fonction retourne un tableau, il est utilisé pour mettre à jour la
|
||||||
|
* ligne
|
||||||
|
*
|
||||||
|
* @return int le nombre de lignes parcourues
|
||||||
|
*/
|
||||||
function _each(CapacitorChannel $channel, $filter, $func, ?array $args): int {
|
function _each(CapacitorChannel $channel, $filter, $func, ?array $args): int {
|
||||||
$this->_create($channel);
|
$this->_create($channel);
|
||||||
if ($func === null) $func = "->onEach";
|
if ($func === null) $func = "->onEach";
|
||||||
|
@ -424,21 +435,22 @@ EOT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function each(?string $channel, $filter, $func=null, ?array $args=null): int {
|
||||||
|
return $this->_each($this->getChannel($channel), $filter, $func, $args);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* appeler une fonction pour chaque élément du canal spécifié.
|
* supprimer tous les éléments correspondant au filtre et pour lesquels la
|
||||||
|
* fonction retourne une valeur vraie si elle est spécifiée
|
||||||
*
|
*
|
||||||
* $filter permet de filtrer parmi les élements chargés
|
* $filter permet de filtrer parmi les élements chargés
|
||||||
*
|
*
|
||||||
* $func est appelé avec la signature de {@link CapacitorChannel::onEach()}
|
* $func est appelé avec la signature de {@link CapacitorChannel::onDelete()}
|
||||||
* si la fonction retourne un tableau, il est utilisé pour mettre à jour la
|
* si la fonction retourne un tableau, il est utilisé pour mettre à jour la
|
||||||
* ligne
|
* ligne
|
||||||
*
|
*
|
||||||
* @return int le nombre de lignes parcourues
|
* @return int le nombre de lignes parcourues
|
||||||
*/
|
*/
|
||||||
function each(?string $channel, $filter, $func=null, ?array $args=null): int {
|
|
||||||
return $this->_each($this->getChannel($channel), $filter, $func, $args);
|
|
||||||
}
|
|
||||||
|
|
||||||
function _delete(CapacitorChannel $channel, $filter, $func, ?array $args): int {
|
function _delete(CapacitorChannel $channel, $filter, $func, ?array $args): int {
|
||||||
$this->_create($channel);
|
$this->_create($channel);
|
||||||
if ($func === null) $func = "->onDelete";
|
if ($func === null) $func = "->onDelete";
|
||||||
|
@ -485,28 +497,9 @@ EOT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* supprimer tous les éléments correspondant au filtre et pour lesquels la
|
|
||||||
* fonction retourne une valeur vraie si elle est spécifiée
|
|
||||||
*
|
|
||||||
* $filter permet de filtrer parmi les élements chargés
|
|
||||||
*
|
|
||||||
* $func est appelé avec la signature de {@link CapacitorChannel::onDelete()}
|
|
||||||
* si la fonction retourne un tableau, il est utilisé pour mettre à jour la
|
|
||||||
* ligne
|
|
||||||
*
|
|
||||||
* @return int le nombre de lignes parcourues
|
|
||||||
*/
|
|
||||||
function delete(?string $channel, $filter, $func=null, ?array $args=null): int {
|
function delete(?string $channel, $filter, $func=null, ?array $args=null): int {
|
||||||
return $this->_delete($this->getChannel($channel), $filter, $func, $args);
|
return $this->_delete($this->getChannel($channel), $filter, $func, $args);
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract function close(): void;
|
abstract function close(): void;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue