13.11 Classe ApplicationParameterManager

La classe ApplicationParameterManager permet de gérer les paramètres des applications : récupérer la valeur d'un paramètre ou positionner la valeur d'un paramètre.

13.11.1 Paramètre utilisateur : valeur principale et valeur personnalisée

Chaque paramètre a une valeur principale, qui est déclarée initialement lors de l'installation de l'application qui le fournit.

Un paramètre peut être déclaré comme personnalisable pour l'utilisateur (propriété 'user' => 'Y')(voir Les paramètres applicatifs). Dans ce cas on parlera d'un paramètre utilisateur.

Les paramètres utilisateurs peuvent être vus comme une couche qui vient s'intercaler entre la valeur principale d'un paramètre et la valeur que l'on obtient quand on interroge ce paramètre :

 
+-------------------------+
| P1 | P2 | P3 | ... | Pn |  Valeur principale
+-------------------------+
       ^
       |
+----+-:--+---------------+
| U1 | :  | U3 | ... | Un |  Valeur personnalisée
+------:------------------+
  ^    |
  |    |
  |    |
  U1   P2                    Valeur appliquée
 

Dans le schéma ci-dessus, les paramètres Px sont déclarés comme étant des paramètres personnalisables, et un utilisateur a une valeur personnalisée sur certains de ces paramètres : U1 pour P1, U3 pour P3, mais il n'a pas de valeur personnalisée pour P2 par exemple.

Lors de l'interrogation de la valeur d'un paramètre pour cet utilisateur, l'interrogation du paramètre P1 retournera la valeur personnalisée U1, alors que l'interrogation du paramètre P2 retournera la valeur principale P2 du paramètre puisque l'utilisateur n'a pas de valeur personnalisée pour ce paramètre.

Si le paramètre principal est déclaré comme n'étant pas personnalisable, alors l'interrogation retournera systématiquement la valeur principale Px du paramètre, puisque l'utilisateur ne pourra pas avoir de valeur personnalisée.

13.11.2 Paramètre global

Un paramètre global (propriété 'global' => 'Y')(voir Les paramètres applicatifs) peut être adressé sans son application : il est transverse et est accessible sans devoir obligatoirement spécifier l'application qui le déclare.

Un paramètre global peut aussi être un paramètre utilisateur (propriété 'user' => 'Y'), dans ce cas pourra être personnalisé pour un utilisateur et sa valeur sera soumise à la mécanique présentée ci-dessus de Paramètre utilisateur : valeur principale et valeur personnalisée.

13.11.3 Héritage de paramètres

Dans le cas ou une application B hérite d'un application parente A, l'ensemble des paramètres de l'application parente A, ainsi que leur valeur principale, sont recopiés dans l'application B.

Les paramètres issus de l'application parente A sont donc dupliqués sur l'application B et leur lecture, ou écriture, est indépendante de ceux de l'application parente A.

×
nouveauté