nur-sery/nur_src/b/params/IParametrable.php

25 lines
987 B
PHP

<?php
namespace nur\b\params;
/**
* Class IParametrable: une classe qui peut être paramétrée de façon générique
*
* Une classe qui implémente cette interface doit définir une constante nommée
* PARAMETRABLE_PARAMS_SCHEMA qui indique le type associé à chaque paramètre
* et sa valeur par défaut le cas échéant
*
* Chaque paramètre a une propriété correspondante dont le nom est construit
* avec le préfixe pp, e.g pour le paramètre the_value, la propriété doit être
* nommée $ppTheValue
*
* Si la propriété doit être spécifiée avec une méthode, la méthode doit aussi
* avoir le préfixe pp, e.g pp_setTheValue() pour reprendre l'exemple ci-dessus.
* Cette méthode est considérée comme privée à l'implémentation. s'il faut
* accéder au paramètre par ailleurs, il faut faire des getters et/ou setters à
* part
*/
interface IParametrable {
/** spécifier les paramètres */
function setParametrableParams(?array $params): void;
}